简要题意:
每两个武将都有一定的默契值。你和电脑轮流选择武将,电脑总会选择让你得不到最大默契值的那个武将;你要选择一种方法,使得你的最大默契值最大。如果会输给电脑则输出 0 0 0,否则输出 1 1 1 和那个最大的默契值。
首先,人肯定比电脑聪明
如果你抱着骗分的态度
printf("0\n");
然后你会得到一个完美的 0 p t 0pt 0pt.
也就是说,始终存在某种方案,使得人可以胜利!
你会发现,电脑的选法是有些死板(但也有些道理)的,它总是会阻止你拿到最高的那个默契值。
所以,每行最大的默契值肯定不是你的。但也不是它的。为什么呢?
假设第 i i i 个武将和第 j j j 个武将拥有最高的默契值 k k k.
此时如果你选了 i i i 和 j j j 中的一个,那么电脑会选另一个, k k k 就谁也不属于。
如果你一个也不选,电脑肯定也不会来选这两个,所以 k k k 仍然谁也不属于。
那么结论得到了,既然最大值抢不到,可不可以抢次大值?
比方说, i