Logo Wy Online Judge

WyOJ

#615. IOIP 20260201 maximizeand

题目描述

动物城是一座大城市,居住着许多不同种类的动物。尽管存在差异,它们都必须一起工作:在警察局、市政厅、快递服务以及城市生活的许多其他领域。

每个动物城居民都有一个效率指标——一个非负整数,描述其个人工作能力。然而,动物城早已注意到,最终结果不仅取决于动物本身,还取决于它与谁配对工作。

两个效率指标分别为 $x$ 和 $y$ 的动物共同工作的效率由特殊函数 $F(x, y)$ 定义。

$F(x, y)$ 定义为满足以下条件的位数 $i$ 的数量:在 $x$ 和 $y$ 的二进制表示中,第 $i$ 位和第 $i+1$ 位同时为 $1$。

动物城市政厅决定优化工作流程,为每个城市居民确定与它配对最有利的另一个动物。显然,一个动物不能与自己配对;此外,每个居民的选择是独立于其他人的。

给你一个动物城居民列表及其对应的效率指标。对于每个动物,需要找到另一个动物,使得它们共同工作的效率(由函数 $F$ 计算)最大——这个最大效率值称为团队合作指标。

更正式地说,对于每个 $i$ 从 $1$ 到 $n$,需要计算 $\max_{j \neq i} F(a_i, a_j)$。

输入格式

第一行包含一个整数 $n$——动物城居民的数量($1 \le n \le 10^6$)。

第二行包含 $n$ 个整数 $a_i$——动物的效率指标($0 \le a_i \le n$)。

输出格式

在唯一的一行中输出 $n$ 个整数——每个动物的团队合作指标。

评分系统

子任务 分数 额外限制 所需子任务 评测信息
0 样例 完全评测
1 10 $n \le 2\,000$ 0 首次错误
2 30 $n \le 10\,000$ 0, 1 首次错误
3 20 $n \le 100\,000$ 0–2 首次错误
4 20 $n \le 200\,000$ 0–3 首次错误
5 20 0–4 首次错误

示例

输入

8
3 0 5 6 2 2 1 7

输出

1 0 0 1 0 0 0 1
题目信息
  • 难度 UKE
  • 控制组 group_default
  • 时间限制 1 s
  • 空间限制 256 MB
  • 数据大小 114.405 MB
提交统计
  • 提交数 3
  • 通过数 1
  • 通过率 33.3%