level 11
其实一开始的时候我写的是:Athlete和AthleteHelper。
AthleteHelper永远不会踩到边界,他会去找离边界很近的人的麻烦。
这样一来大家都会被Athlete消灭了。
于是我在想,NOI最后的决赛是瑞士轮,意味着你输了一盘并不要紧,只要总体水平高就能胜出。
假设有两个人A和B,他们各写了一个AI。两个AI都会出生在(7, 7),出生后在原地绕个圈。
这样A的AI能知道B的AI是不是在场上,B的AI也能知道A的AI是不是在场上。
如果不在场上就正常游戏。
如果在场上,那么随机分配两人的角色决定谁是Athlete谁是AthleteHelper,通过特殊的位置移动来传递信息。
这样Athlete就能赢了。
由于是随机分配的角色,不可能出现某一方当Athlete特别多的情况。
但是好像远没有那么简单。
残酷之处在于,AthleteHelper必输,却要帮Athlete的忙。
只有合作,没有共赢。
也许只是一场比赛,大家对获胜并没有那么强烈的欲望。
要是这样考虑的话就不好玩了。
下面的种种分析都是基于“我一定要赢”的信念。