HDU 1847--Good Luck in CET-4 Everybody!

来源:互联网 发布:nginx proxy cache 编辑:程序博客网 时间:2024/05/16 10:48

来源:http://acm.hdu.edu.cn/showproblem.php?pid=1847

分析:因为任何正整数都能写成若干个2的整数次方幂之和。因为规定只能取2的某个整数次方幂,只要你留敌手的牌数为3的倍数时,那么你就必赢,因为留下3的倍数时,敌手有两种景象:
1:若是轮到对方抓牌时只剩3张牌,对方要么取1张,要么取2张,剩下的你全取走,win! 
2:若是轮到对方抓牌时还剩3*k张牌,敌手不管取几许,剩下的牌数是3*x+1或者3*x+2。轮到你时,你又可以机关一个3的倍数。 所以无论哪种景象,当你留给敌手为3*k的时辰,你是必胜的。
题目说Kiki先抓牌,那么当牌数为3的倍数时,Kiki就输了。不然Kiki就能哄骗先手上风将留给对方的牌数变成3的倍数,就必胜。

#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>#include<string>#include<cmath>#include<map>#include<set>#include<queue>using namespace std;int main(){    int n;    while(cin>>n)    {        if(n%3==0)            cout<<"Cici"<<endl;        else            cout<<"Kiki"<<endl;    }    return 0;}


 

 

原创粉丝点击