B. 徐老师的淘汰赛

    传统题 1500ms 256MiB

徐老师的淘汰赛

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

又到了一年一度的 ACMICPCACM-ICPC 邀请赛时间,睿爸附中又要派出队伍去参加啦!

但是今年想参加的同学人数实在是太多了,于是徐老师决定让他们参加一次内部选拔赛

经过统计,徐老师发现参赛人数恰好为 2n2^n 位选手,于是他给他们依次编号为 12n1 \sim 2^n,其中第 ii 位同学的实力为 aia_i

为了能够快速进行选拔,所以徐老师决定进行 nn 轮选拔赛,选拔系数设定为 MM,比赛规则如下:

  1. ii 轮比赛时,分组人数为 len=2ilen=2^i,也就是会让编号为 1len1 \sim len 的选手为第一组,编号为 len+12lenlen+1 \sim 2 * len 的选手为第二组 \dots,形式化的来说,也就是每 lenlen 名选手为一组(包括被淘汰的)

  2. 在划分完组以后,对于某一组来说,将组内 未被淘汰 的选手实力从高到低进行排序,然后这个组内排名 >M> M 的选手会在本轮被淘汰(若组内人数 M\leq M,则本组本轮全员保留)

  3. 对于第 ii 轮比赛,在本轮所有组比赛结束后,剩余未淘汰的选手总数为 KK,那么在本轮被淘汰的所有选手 最终比赛排名 即为 K+1K+1

  4. 当第 nn 轮比赛结束后,所有未被淘汰的选手在当前组内的排名即为他的 最终比赛排名

现在徐老师想知道,所有选手的 最终比赛排名 是多少。

输入格式

输入第一行包含两个整数 n,Mn,M,含义如题

输入第二行包含 2n2^n 个整数,分别表示 a1,a2,a3a2na_1,a_2,a_3 \dots a_{2^n}

输出格式

输出一行包含 2n2^n 个整数,依次表示 12n1 \sim 2^n 每名选手的最终比赛排名

数据范围

测试点 数据范围 特殊性质
131 \sim 3 n,M3n, M \leq 3
474 \sim 7 n17n \leq 17 M=2nM=2^n
8108 \sim 10 M=1M=1
111311 \sim 13 M=2M=2
141614 \sim 16
172017 \sim 20 n20n \leq 20

对于所有数据满足 n20,M2n,1ai109n \leq 20, M \leq 2^n, 1 \leq a_i \leq 10^9

样例输入1

3 2
1 7 3 2 8 5 6 4

样例输出1

5 2 3 5 1 5 3 5 

样例解释1

第一轮比赛分组为:[1,7],[3,2],[8,5],[6,4][1,7],[3,2],[8,5],[6,4],本轮无人淘汰

第二轮比赛分组为:[1,7,3,2],[8,5,6,4][1,7,3,2],[8,5,6,4] 第一组淘汰编号为 1,41,4 的选手,第二组淘汰编号为 6,86,8 的选手,这四位选手的最终排名为 55

第三轮比赛分组为 [(1),7,3,(2),8,(5),6,(4)][(1),7,3,(2),8,(5),6,(4)](用括号表示被淘汰的选手) 被淘汰的选手为 3,73,7,这两位选手的最终排名为 33

最后剩下的 2,52,5 两位选手组内排名分别为 2,12,1,这就是他们的最终排名

样例输入2

3 3
1 7 3 2 8 5 6 4

样例输出2

7 2 4 4 1 4 3 7

2026暑假提高组模拟赛(1)

未参加
状态
已结束
规则
IOI
题目
3
开始于
2026-7-31 16:30
结束于
2026-8-10 16:30
持续时间
240 小时
主持人
参赛人数
27