就是必胜点与必败点的计算而已。计算每一种情况。设st[i][j]为在第i个人剩下j个石头时的情况,拿它转移后的情况比较。可以到达必败点,则当前为必胜点。若只能到达必胜点,则当前点为必败点。

 #include <iostream>
#include <cstdio>
using namespace std;
const int S=;
const int N=; int st[N][S];
int s,n;
int MA[N]; int main(){
int k,i,j;
while(scanf("%d",&k)!=EOF){
if(!k) break;
scanf("%d",&s);
n=*k;
for(i=;i<=n;i++)
scanf("%d",&MA[i]);
for(i=;i<=n;i++)
st[i][]=;
for(j=;j<=s;j++){
for(i=;i<=n;i++){
st[i][j]=;
if(i==n){
for(k=;k<=MA[i];k++){
if(j-k>=){
if(st[][j-k]==){
st[i][j]=;
break;
}
}
else break;
}
}
else{
for(k=;k<=MA[i];k++)
if(j-k>=){
if(st[i+][j-k]==){
st[i][j]=;
break;
}
}
else break;
}
}
}
printf("%d\n",st[][s]);
}
return ;
}

最新文章

  1. python中实现定时器Timer
  2. [转]Ubantu vmware tools 安装
  3. poj1664-放苹果(递归)
  4. Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限
  5. BZOJ 1208: [HNOI2004]宠物收养所
  6. c++11中的static
  7. Angular.js 以及个人学习网站
  8. 类型参数约束 : Controller where T : class,new()
  9. HDU 4463 Outlets (最小生成树)
  10. linux eclipse中运行android AVD 错误
  11. 事务(JDBC、Hibernate、Spring)
  12. Android查缺补漏--Activity生命周期和启动模式
  13. 【WebApi系列】详解WebApi如何传递参数
  14. RAM
  15. JavaScript函数节流和函数防抖之间的区别
  16. 语法、id和class选择器、创建、
  17. javaweb项目运行时生成的Servers项目作用
  18. solr联合多个字段进行检索(multivalued和copyfield的使用)
  19. U3D+SVN: 两份相同资源放在不同目录下导致META的更改
  20. Linux下解压分包文件zip(zip/z01/z02)【转】

热门文章

  1. Java数据库编程及Java XML解析技术
  2. Python开发利器PyCharm 2.7附注册码
  3. 网上订餐系统的SQL SERVER 2005数据库连接
  4. Python入门 不必自己造轮子
  5. netty百万连接跟踪记录
  6. golang单点推送
  7. fusionchart简单demo柱状图
  8. VR: AR和VR演进哲学
  9. (转)基于Metronic的Bootstrap开发框架经验总结(4)--Bootstrap图标的提取和利用
  10. MySql数据库多表操作