一道题目
不知道怎么做:
有两个人在玩一个游戏:
桌上有n(1<=n<10)堆豆子,每堆有xi(1<=xi<100)个:
每个人可以轮流将一堆豆子分为大小不同的两堆,
在一些情况下,谁不能分了,他就输了,
而在另一些情况下,最后一个可以分的人输
每个人在轮到他分时必须分,不能弃权
问:谁能取胜?
输入数据:第一行包含两个数据:n和t.
t为1代表不能分的人输,t=2代表最后一个分的人输
第2..n+1行:每行一个数据:xi
输出数据:若先走者可胜,则输出两行:
第一行为分离的堆的编号
第二行为分离的两个小堆的大小,小在前,大在后.
若有多种分离办法,选取编号较小的堆进行分离
若在这个堆中有几种可行的办法,则应使分离出的堆中,较小的堆尽量小.
若先走者不能胜,则输出一行"Impossible"
输入样例1
1 1
3
输出样例1
1
1 2
输入样例2
2 2
4
2
输出样例2
1
1 3
输入样例3
2 1
4
4
输出样例3
Impossible