寒假练习
题目简介
1、 总共n张牌;
2、 双方轮流抓牌;
3、 每人每次抓牌的个数只能是2的幂次(即:1,2,4,8,16…)
4、 抓完牌,胜负结果也出来了:最后抓完牌的人为胜者;
先胜出的输出“Kiki”,否则输出“Cici”;
思路
首先确定1, 2 两个局势先手必胜,为 P 态;
面对3这个局面,只能变成1,或者 2,则先手必输,为 N 态。
以此类推,会发现PPN PPN PPN为 3 的倍数。
题目链接:HDU 1847
最后奉上代码
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
int n;
int main()
{
while(scanf("%d",&n)!=EOF)
{
if(n%3 == 0)puts("Cici");
else puts("Kiki");
}
return 0;
}