#P9731. [CEOI2023] Balance

[CEOI2023] Balance

题目背景

翻译自 CEOI2023 Day1 T3 Balance

题目描述

由于黑客对评测机的攻击,组委会决定重测所有提交记录。

NN 台评测机,TT 个题目(编号为 1,2,,T1, 2, \cdots, T)。组委会已经确定,每台评测机要评测哪些提交(数目相同,都是 SS 个提交,保证 SS22 的整数次幂)。在接下来的 SS 分钟内,每分钟每台评测机会评测一个提交。

每个提交都会提交至某个题目。由于存数据的机器太脆弱了,所以要求,对于所有题目和任意两个时刻,在这两个时刻,这个题的被评测的提交的数量之差不超过 11

请构造一组方案,使得满足上面的条件。

输入格式

第一行输入 N,S,TN, S, T

接下来 NN 行,每行输入 SS 个整数,表示这个评测机被分配到的提交的题目编号。

输出格式

输出 NN 行,每行 SS 个数,表示这个评测机按顺序要评测的提交的题目编号。

可以证明,一定存在一组解。

3 2 3
1 2
2 3
2 3
2 1
3 2
2 3
3 4 3
2 3 2 2
2 3 3 2
2 2 3 2
2 2 2 3
3 2 3 2
2 3 2 2

提示

保证存在正整数 kk 使得 S=2kS = 2 ^ k1N,S,T1051 \le N, S, T \le 10 ^ 5NS5×105NS \le 5 \times 10 ^ 5

  • Subtask 1(1010 分):S=2S = 2N,T20N, T \le 20
  • Subtask 2(15+5+515 + 5 + 5 分):S=2S = 2
  • Subtask 3(15+5+515 + 5 + 5 分):NS104NS \le 10 ^ 4
  • Subtask 4(20+10+1020 + 10 + 10 分):没有其它限制。

对于后三个子任务,存在部分分(对应括号中的分数):

  • 第一个数表示如果能解决满足 TNT \le N 且对于每个题目的提交数量均整除 SS 时的所有测试点能得到的分数。
  • 第二个数表示如果能解决满足 TNT \le N 时的所有测试点能多得到的分数。
  • 第三个数表示如果解决了整个 Subtask 时能多得到的分数。

在洛谷上,本题分为 1010 个子任务。对于原来的后三个 Subtask,在本题中分别按顺序分为三个子任务(如原 Subtask 3 就是子任务 5,6,75, 6, 7),有依赖关系。