HDU1847----Good Luck in CET-4 Everybody!

来源:互联网 发布:如何安装天正软件 编辑:程序博客网 时间:2024/06/09 19:09

可以用SG函数来做,也可以找规律。找规律是找3的倍数。下面我是用SG函数来做的,因为对SG函数还不熟悉,多练练手。

#include <stdio.h>#include <iostream>#include <algorithm>#include <string.h>using namespace std;int a[15],i,j,sg[1005];bool visit[1005];void find_sg(){for(i=2;i<=1000;i++){memset(visit,false,sizeof(visit));for(j=1;a[j]<=i;j++){int flag=sg[i-a[j]];visit[flag]=true;}for(j=0;j<=10;j++){if(!visit[j]){sg[i]=j;break;}}}}int main(){int n;a[0]=1,sg[0]=0,sg[1]=1,sg[2]=2;for(i=1;i<=10;i++)a[i]=a[i-1]*2;while(scanf("%d",&n)!=EOF){find_sg();if(!sg[n])printf("Cici\n");elseprintf("Kiki\n");}return 0;}


原创粉丝点击