hdu 1847 Good Luck in CET-4 Everybody! 博弈论

方法一:找规律,很容易知道

 

1 #include<stdio.h>
2 int main(){
3     int n;
4     while(scanf("%d",&n)!=EOF){
5         puts(n%3==0?"Cici":"Kiki");
6     }
7     return 0;
8 }
View Code

 


方法二:简单的sg函数应用

代码如下:

 

 1 #include<iostream>
 2 #include<stdio.h>
 3 #include<algorithm>
 4 #include<iomanip>
 5 #include<cmath>
 6 #include<cstring>
 7 #include<vector>
 8 #define ll __int64
 9 #define pi acos(-1.0)
10 #define MAX 50000
11 using namespace std;
12 int sg[1001],n,t;
13 int main(){
14     memset(sg,0,sizeof(sg));
15     sg[0]=0;
16     for(int i=0;i<=1000;i++)
17     if(!sg[i]){
18         for(int j=0;j<=10&&(t=i+(1<<j))<=1000;j++){
19             sg[t]=1;
20         }
21     }
22     while(cin>>n){
23         puts(sg[n]==0?"Cici":"Kiki");
24     }
25     return 0;
26 }
View Code

 

 

 

posted @ 2013-08-12 21:48  _随心所欲_  阅读(194)  评论(0)    收藏  举报