站外题求助
  • 板块灌水区
  • 楼主l_minn
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/10/19 09:22
  • 上次更新2024/10/19 09:27:22
查看原帖
站外题求助
1497165
l_minn楼主2024/10/19 09:22

题面描述 一年一度的校园歌手大赛开始了,今年一共有 n n 个选手参与了比赛,分别编号为 1 ∼ n 1∼n ,每个人的唱功可以用数字 a i a i​来量化,保证 a 1 ∼ a n a 1​∼a n​互不相同。

今年赛事委员会决定让比赛变得更刺激一点,于是采用了以下的赛制:

编号为 2 d + 1 2d+1 的选手和编号为 2 d + 2 2d+2 的选手会通过对唱来PK( d d 为整数),唱功更高的选手(即 a i a i​更大的选手)获胜,晋级下一轮。如果 n n 为奇数,则编号为 n n 的选手轮空,直接晋级。这一轮所有淘汰的选手,其最终名次就是第 ⌈ n 2 ⌉ + 1 ⌈ 2 n​⌉+1 名。 所有晋级的选手重新编号 1 ∼ ⌈ n 2 ⌉ 1∼⌈ 2 n​⌉ ,继续下一轮。 直到剩下一个选手,Ta就是歌手大赛的冠军,其名次也就是第 1 1 名。 唱功不错的小 B 却惨遭一轮游,原因是第一轮遇到的对手最后获得了冠军。

所以他为了向赛事委员会说明这个比赛规则的不合理性,他想对于每一个 i i ,求出如果初始编号为 i i 的选手能在第一次被淘汰的那一场比赛获胜晋级,他最终能得到什么名次。

输入格式 第 1 1 行包含一个正整数 n n,表示选手数量。

第 2 2 行包含 n n 个正整数 a 1 , a 2 , . . . , a n a 1​,a 2​,...,a n​表示每一位选手的唱功。

输出格式 包含一行 n n 个整数,含义如题。

样例一 输入 10 3 9 6 12 15 24 30 18 27 21

输出 4 3 4 2 4 2 1 4 1 2

2024/10/19 09:22
加载中...