题意:

有两个人从N个石子堆中拿石子,其中一个人可以拿两次,第二个人只能拿一次。最后拿完的人胜利。

思路:

类型 Hakase先 Hakase后
1 W L
1 1 W W
1 1 1 (3n) L W
1 1 1 1 (3n+1) W L
1 1 1 1 1 (3n+2) W W
类型 Hakase先 Hakase后
X 1 1 W L
X Y 1 W W
X Y Z W W
X 1 1 1 W L
X Y 1 1 W W
X Y Z 1 W W
X 1 1 1 1 W W
X Y 1 1 1 W W

1.若n = 3t,若每个石子堆都是1,A先手必输(1 1 1)。只有一个数量大于1的石子堆,则B先手A必输(X 1 1)。

2.若n = 3t+1,若只有一堆柿子大于1(X 1 1 1)。则B先手A必输。

按照结论写代码。。

代码:

#include<iostream>

using namespace std;

int main() {
int t, n, d;
scanf("%d", &t);
while(t--) {
bool flag = true;
int cnt = 0, a;
scanf("%d %d", &n, &d);
for(int i = 0; i < n; i++) {
scanf("%d", &a);
if(a >= 2)
cnt++;
}
int x = n % 3;
if(x == 0) {
if(cnt==0 && d==1)
flag = false;
if(cnt==1 && d==2)
flag = false;
}else if(x == 1){
if(cnt<=1 && d==2)
flag = false;
}
if(flag) printf("Yes\n");
else printf("No\n");
}
return 0;
}

HDU - 6266 - HDU 6266 Hakase and Nano (博弈论)的更多相关文章

  1. HDU.1847 Good Luck in CET-4 Everybody! ( 博弈论 SG分析)

    HDU.1847 Good Luck in CET-4 Everybody! ( 博弈论 SG分析) 题意分析 简单的SG分析 题意分析 简单的nim 博弈 博弈论快速入门 代码总览 //#inclu ...

  2. Hakase and Nano 【思维博弈】

    Hakase and Nano 时间限制: 1 Sec  内存限制: 128 MB 提交: 400  解决: 104 [提交] [状态] [命题人:admin] 题目描述 Hakase and Nan ...

  3. upc组队赛2 Hakase and Nano【思维博弈】

    Hakase and Nano 题目描述 Hakase and Nano are playing an ancient pebble game (pebble is a kind of rock). ...

  4. HDU - 2222,HDU - 2896,HDU - 3065,ZOJ - 3430 AC自动机求文本串和模式串信息(模板题)

    最近正在学AC自动机,按照惯例需要刷一套kuangbin的AC自动机专题巩固 在网上看过很多模板,感觉kuangbin大神的模板最为简洁,于是就选择了用kuangbin大神的模板. AC自动机其实就是 ...

  5. hdu 2177 取(2堆)石子游戏 博弈论

    由于要输出方案,变得复杂了.数据不是很大,首先打表,所有whthoff 的奇异局势. 然后直接判断是否为必胜局面. 如果必胜,首先判断能否直接同时相减得到.这里不需要遍历或者二分查找.由于两者同时减去 ...

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

    方法一:找规律,很容易知道 #include<stdio.h> int main(){ int n; while(scanf("%d",&n)!=EOF){ p ...

  7. HDU.3032.Nim or not Nim?(博弈论 Lasker's Nim)

    题目链接 \(Description\) 有多堆石子, 每次可以将任意一堆拿走任意个或者将这一堆分成非空的两堆, 拿走最后一颗石子的人胜利.问谁会获得胜利. \(Solution\) Lasker's ...

  8. HDU 3062 && HDU 1824 && POJ 3678 && BZOJ 1997 2-SAT

    一条边<u,v>表示u选那么v一定被选. #include <iostream> #include <cstring> #include <cstdio> ...

  9. HDU 1069&&HDU 1087 (DP 最长序列之和)

    H - Super Jumping! Jumping! Jumping! Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format: ...

随机推荐

  1. [Android6.0][RK3399] 双屏异显代码实现流程分析(二)【转】

    本文转载自:http://blog.csdn.net/dearsq/article/details/55050125 Patch Code dtsi rk3399-androiddtsi rk3399 ...

  2. Flask的flask-sqlalchemy

    flask-sqlalchemy是Flask和SQLAlchemy的管理者 - db = SQLAlchemy() - 包含配置 - 包含ORM基类 - 包含create_all - engine - ...

  3. VS快捷键整理

    Ctrl+J 自动提示Ctrl+. 解析ctrl+e,d 格式化代码ctrl+e,s 辅助横线Ctrl+m,o 全部合闭Ctrl+m,l 全部打开Ctrl + Shift + space 方法提示调用 ...

  4. 盘点国内网站常用的一些 CDN 公共库加速服务(转载)

    百度CND jQuery 地址:<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></scri ...

  5. eclipse faild to creat the java Virtual Machine的解决办法

    打开eclipse的时候突然出现了 faild to creat the java Virtual Machine 解决办法:打开解压后的Eclipse文件夹,找到eclipse.ini配置文件 打开 ...

  6. js 获取图片宽高 和 图片大小

    获取要查看大小的img var img_url = 'http://img5.imgtn.bdimg.com/it/u=4267222417,1017407570&fm=200&gp= ...

  7. mysql5.7 1055

    错误提示: [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggreg ...

  8. 自动生成 html5 小页面

    StringBuilder htmltext = new StringBuilder();            try            {                //var readP ...

  9. Vue知识点小总结1

    ES6常用语法 变量的定义 let定义变量 不会变量提升 有全局作用域和函数作用域,块级作用域{} 不能重复定义 var定义变量 会变量提升 只有全局作用域和函数作用域 能够重复定义 const定义变 ...

  10. Agar.io 简单但是有趣的网页游戏

    攻略,进阶 上榜第一次 (有点水,九百多分)  上榜第二次 (完成四杀,逆袭上榜) 上榜第三次 (忘写名字,自己补上) 上榜第四次 (人生巅峰!) 上榜第五次 (踩了狗屎运,上榜这么容易了?收了一个小 ...