Good Luck in CET-4 Everybody!

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3617    Accepted Submission(s): 2279

Problem Description
大学英语四级考试就要来临了,你是不是在紧张的复习?也许紧张得连短学期的ACM都没工夫练习了,反正我知道的Kiki和Cici都是如此。当然,作为在考场浸润了十几载的当代大学生,Kiki和Cici更懂得考前的放松,所谓“张弛有道”就是这个意思。这不,Kiki和Cici在每天晚上休息之前都要玩一会儿扑克牌以放松神经。
“升级”?“双扣”?“红五”?还是“斗地主”?
当然都不是!那多俗啊~
作为计算机学院的学生,Kiki和Cici打牌的时候可没忘记专业,她们打牌的规则是这样的:
1、  总共n张牌;
2、  双方轮流抓牌;
3、  每人每次抓牌的个数只能是2的幂次(即:1,2,4,8,16…)
4、  抓完牌,胜负结果也出来了:最后抓完牌的人为胜者;
假设Kiki和Cici都是足够聪明(其实不用假设,哪有不聪明的学生~),并且每次都是Kiki先抓牌,请问谁能赢呢?
当然,打牌无论谁赢都问题不大,重要的是马上到来的CET-4能有好的状态。

Good luck in CET-4 everybody!

 
Input
输入数据包含多个测试用例,每个测试用例占一行,包含一个整数n(1<=n<=1000)。
 
Output
如果Kiki能赢的话,请输出“Kiki”,否则请输出“Cici”,每个实例的输出占一行。
 
Sample Input
1
3
 
Sample Output
Kiki
Cici
 
Author
lcy
 
Source
 
Recommend
lcy

这题很容易发现n为3的倍数时候是必败点。

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n;
while(scanf("%d",&n) == )
{
if(n%)printf("Kiki\n");
else printf("Cici\n");
}
return ;
}

也可以使用SG函数的方法做,很简单

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
const int MAXN = ;
bool vis[MAXN];
int sg[MAXN];
int mex(int x)
{
if(sg[x]!=-)return sg[x];
memset(vis,false,sizeof(vis));
for(int i = ;i <= x;i <<= )
{
vis[mex(x-i)] = true;
}
for(int i = ; ; i++)
if(!vis[i])
return sg[x] = i;
}
int main()
{
int n;
memset(sg,-,sizeof(sg));
for(int i = ;i <=;i++)
sg[i] = mex(i);
while(scanf("%d",&n) == )
{
if(sg[n]==)printf("Cici\n");
else printf("Kiki\n");
}
return ;
}

最新文章

  1. ABP文档 - Javascript Api - AJAX
  2. windows7 阻止copyfile到windows目录的解决办法
  3. setFeatureInt、android 自定义标题栏
  4. ubuntu 设置 NAT 转发
  5. FragmentTabHost+ViewPager实现底部按钮
  6. Delphi的Socket编程步骤
  7. 在C++中调用DLL中的函数
  8. C# WPF 解压缩7zip文件 带进度条 sevenzipsharp
  9. [Android分享] 如何解决Android 5.0中出现的警告:Service Intent must be explicit
  10. Redis集群的相关概念
  11. Math.abs(~2018),掌握规律!
  12. linux上部署rmi+memcache服务
  13. linux 上安装多个不同版本的mysql 踩的坑
  14. 手动用tomcat启动war包,无法访问web项目
  15. BT.656
  16. JVM规范系列开篇:为什么要读JVM规范?
  17. java 基础知识点必备
  18. FZU 2150 fire game (bfs)
  19. Eclipse Debug不能热部署解决
  20. Android 解决Toast一直显示个不停的问题

热门文章

  1. Qt之等待提示框(QTimer)
  2. Js内置对象的应用
  3. BZOJ 1878 HH的项链
  4. HDU 5360 Hiking 登山 (优先队列,排序)
  5. QCon 2015 阅读笔记 - 移动开发最佳实践
  6. 对于fmri的hrf血液动力学响应函数的一个很直观的解释-by 西南大学xulei教授
  7. 【转】Android屏幕适配全攻略(最权威的官方适配指导)
  8. RequireJS入门(三)转
  9. 查看MySQL的警告信息
  10. 使用C#代码发起K2 Blackpearl流程