CF2038I.Polyathlon
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
伯兰(Berland)是今年国际大学生多项全能比赛的主办国!与双项全能是两个项目的比赛类似,多项全能是多个项目的比赛。今年有 m 个项目。此外,还有 n 名参赛者。项目编号从 1 到 m ,参赛者编号从 1 到 n 。
有些参赛者擅长多项运动。我们还知道,对于每一对参与者来说,至少存在一种运动,即其中一人擅长该运动,而另一人不擅长。
比赛项目的顺序在开幕式上决定。从历史上看,它是由万能的随机数生成器决定的。掷出一个从 1 到 m 的随机数 x 。比赛从 x 开始,然后是 (xmodm+1) ,接着是 ((x+1)modm+1) ,以此类推。
每个项目的比赛规则如下。如果剩下的所有参赛者(所有尚未被淘汰的参赛者)都不擅长该项目,则所有人都进入下一个项目。否则,所有熟练的参赛者都进入下一个项目,所有不熟练的参赛者都被淘汰出局。一旦比赛只剩下一名参赛者,比赛即告结束,该参赛者即为获胜者。
作为比赛的组织者,您事先对比赛可能出现的结果很好奇。对于每个运动项目 x ,如果比赛从运动项目 x 开始,请打印获胜者的编号。
输入格式
第一行包含两个整数 n 和 m ( 2≤n,m≤106,n≤2m,nm≤2×106 ),它们分别是参赛人数和运动项目数。
接下来 n 行的每行中包含一个二进制字符串,该字符串正好由 m 个字符 0 或 1 组成--即第 i 个参赛者的技能组合。如果第 j 个字符为1,则 i 个参赛者熟练掌握了 j 运动。如果为0,则第 i 个参与者不擅长 j 运动。
输入的附加限制:对于每一对参与者来说,至少存在一种运动,即其中一人擅长该运动,而另一人不擅长。换句话说,所有 n 二进制字符串都是成对不同的。
输出格式
输出 m 个整数。对于从 1 到 m 的每个 x ,如果比赛从运动 x 开始,则打印获胜者的编号。
输入输出样例
输入#1
3 5 10010 01100 10101
输出#1
3 2 3 1 3
输入解题思路,AI测评打分。不知道怎么写?