考试的时候,这道题正确率极高,基本只要交了就可以过。。。
但是,之后几个ac了的同学,删掉一部分程序,发现还可以过。。。
再后来,干脆不输出,发现还是过了。。。
检查compare,发现少了一个语句。。。
最后,干脆不开文件输入,只开文件输出,没有主程序,也过了、、、
总之,这是一道无语的贪心题,可供娱乐。
发个题目,不留题解,有兴趣的同学可以试一下。
小Z翻硬币
小Z最喜欢玩的就是翻硬币游戏,不过主要是喜欢硬币而不是翻。不过最近小A跟它玩一个翻硬币游戏它总是输。它发誓至少要赢小A一次,所以它向你求助:
一个(2n+1)*(2n+1)的矩阵中有许多硬币,它们分别正面朝上或反面朝上,每翻一次你可以将2n+1个硬币翻面。这2n+1个硬币满足:每行每列只有一个硬币被翻面。
给你一个初始状态,希望求得一个操作序列,使得矩阵中正面朝上的硬币不超过2n个。
输入:第一行一个数n (1<=n<=100)
接下来2n+1行 每行2n+1个数表示状态
1 表示正面 0表示反面
输出:若干行 每行一条指令(为操作序列 要求少于30000条指令)
每行2n+1个数 A1..A2n+1(Ai表示第i行第Ai列的硬币被翻面)
(保证数据有解)
样例:coin.in
1
1 0 1
0 1 0
0 0 0
Coin.out
1 2 3
20%数据满足:n <= 10
100%数据满足:n <= 100
这个程序比莫涛本人还快(贪心策略来自罗雨屏)