博弈论

  这题跟 BZOJ 1874 取石子游戏 差不多

  先暴力求出10000以内的SG函数(利用定义来求即可)

  然后每次询问直接将SG值异或起来即可……

 Source Code
Problem: User: sdfzyhy
Memory: 444K Time: 313MS
Language: G++ Result: Accepted Source Code //POJ 2960
#include<cstdio>
#include<cstring>
#define F(i,j,n) for(int i=j;i<=n;++i)
int getint(){
int v=,sign=; char ch=getchar();
while(ch<''||ch>''){ if (ch=='-') sign=-; ch=getchar();}
while(ch>=''&&ch<=''){ v=v*+ch-''; ch=getchar();}
return v*=sign;
}
const int N=;
/******************tamplate*********************/
int f[N],s[];
bool mark[N];
void calsg(int n){
f[]=;
F(i,,){
memset(mark,,sizeof mark);
F(j,,n) if (i-s[j]>=)
mark[f[i-s[j]]]=;
F(j,,i) if(!mark[j]){ f[i]=j;break;}
}
}
int main(){
int n,m,k;
while(scanf("%d",&n)!=EOF && n){
F(i,,n) s[i]=getint();
m=getint();
calsg(n);
F(i,,m){
k=getint();
int ans=;
F(j,,k) ans^=f[getint()];
printf(ans ? "W" : "L");
}
printf("\n");
}
return ;
}

最新文章

  1. ActiveMQ
  2. Java RMI之HelloWorld篇
  3. request和session作用域的意义
  4. boost解析json(2)
  5. 【Netty学习】 ChannelInitializer 学习
  6. (转)可收缩、扩展的TextView
  7. db.class的实现类
  8. bzoj1965
  9. 微软2016校园招聘4月在线笔试 ABC
  10. &lt;转载&gt;构造函数与拷贝构造函数
  11. SQL Server如何固定执行计划
  12. 语句的分号、逗号和函数中var的使用
  13. Linux_服务器_07_ 将用户设置为管理员
  14. 洛谷 P1272 解题报告
  15. Python课程学习总结
  16. git忽略UserInterfaceState.xcuserstate
  17. C#的格式化(进制转换|位运算)
  18. QtTest模块出现控制台的原因与方案
  19. Image控件Stretch属性
  20. js读取csv文件为json显示

热门文章

  1. 建立临时的表 数据 空值 与 NULL 转换
  2. cocos2d-x一些核心概念截杀
  3. iOS-NSOperation多线程
  4. 【学习笔记】【C语言】指向函数的指针
  5. C语言成绩测试 ,水仙花数,打印星图
  6. C++实现设计模式之 — 简单工厂模式
  7. header页头内容整理
  8. window store app 附件读取
  9. Laravel 5 基础(三)- 向视图传送数据(续)
  10. Firebird数据库相关备忘录