每次一人可以从盒子里取出若干条巧克力棒,或是将一根取出的巧克力棒吃掉正整数长度。


Nim游戏多了一个决策:拿出一些石堆

显然只要给对方构造异或和为0的子集就行了

暴枚子集...

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
typedef long long ll;
const int N=;
inline int read(){
char c=getchar();int x=,f=;
while(c<''||c>''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
}
int n,a[N];
bool solve(){
int All=<<n;
for(int s=;s<All;s++){
int sg=;
for(int i=;i<n;i++) if((<<i)&s) sg^=a[i];
if(!sg) return true;
}
return false;
}
int main(){
//freopen("in","r",stdin);
int T=;
while(T--){
n=read();
for(int i=;i<n;i++) a[i]=read();
puts(solve() ? "NO" : "YES");
}
}

BZOJ 1299: [LLH邀请赛]巧克力棒 [组合游戏]的更多相关文章

  1. bzoj:1299: [LLH邀请赛]巧克力棒

    原题:http://www.lydsy.com/JudgeOnline/problem.php?id=1299 众多dalao的题解已经很详细了:http://blog.csdn.net/wzq_qw ...

  2. BZOJ.1299.[LLH邀请赛]巧克力棒(博弈论 Nim)

    题目链接 \(Description\) 两人轮流走,每次可以从盒子(容量给定)中取出任意堆石子加入Nim游戏,或是拿走任意一堆中正整数个石子.无法操作的人输.10组数据. \(Solution\) ...

  3. BZOJ 1299: [LLH邀请赛]巧克力棒 【SG函数/博弈分析/高斯消元】

    因为太懒,放个博客 我只写了O(2n)O(2^n)O(2n)的 CODE #include <cstdio> int n, x[15]; int main () { for(int T = ...

  4. BZOJ1299: [LLH邀请赛]巧克力棒(Nim游戏)

    Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 552  Solved: 331[Submit][Status][Discuss] Descriptio ...

  5. BZOJ1299[LLH邀请赛]巧克力棒——Nim游戏+搜索

    题目描述 TBL和X用巧克力棒玩游戏.每次一人可以从盒子里取出若干条巧克力棒,或是将一根取出的巧克力棒吃掉正整数长度.TBL先手两人轮流,无法操作的人输. 他们以最佳策略一共进行了10轮(每次一盒). ...

  6. 【BZOJ】1299: [LLH邀请赛]巧克力棒

    [算法]博弈论 [题解]这道题不是典型的SG函数题了. 不把它当成游戏看待,那么这道题是在说n个石子堆,每次可以加入若干个或进行Nim游戏. 我们当前先手,则考虑构造必败态来获胜. 当前已加入的NIm ...

  7. 【bzoj1299】[LLH邀请赛]巧克力棒 博弈+模拟

    Description TBL和X用巧克力棒玩游戏.每次一人可以从盒子里取出若干条巧克力棒,或是将一根取出的巧克力棒吃掉正整数长度.TBL先手两人轮流,无法操作的人输. 他们以最佳策略一共进行了10轮 ...

  8. B1299 [LLH邀请赛]巧克力棒 博弈论

    这个题一看就是nim游戏的变形.每次先手取出巧克力就是新建一个nim,但假如先手取一个为0的而且无论后手怎么取剩下的都无法为零就行了.然后用dfs跑. 题干: Description TBL和X用巧克 ...

  9. BZOJ1299 [LLH邀请赛]巧克力棒

    怎么又是博弈论...我去 Orz hzwer,这道题其实是可以转化成Nim游戏的! "第一步: 先从n根巧克力棒中取出m(m>0)根,使得这m根巧克力棒的xor和为0,同时使得剩下的n ...

随机推荐

  1. c语言基础学习02_windows系统下的cmd命令

    =============================================================================注意:cmd的命令很多,需要用的时候可以查询即 ...

  2. Spring框架学习笔记(3)——配置bean

    1.属性注入 (1)根据setter方法属性注入,这里使用的是property标签.需要bean属性提供对应的setter方法,比如笔记(1)里的 HelloWorld使用的就是这种方法. <! ...

  3. powerdesign

  4. Thinkphp5+PHPExcel实现批量上传表格数据功能

    http://www.jb51.net/article/129262.htm 1.首先要下载PHPExcel放到vendor文件夹下,我的路径是:项目/vendor/PHPExcel/,把下载的PHP ...

  5. dede列表标签list:应用大全 {dede:list}

    http://syizq.blog.163.com/blog/static/435700372011616115826329/ 标签名称: list 功能说明: 表示列表模板里的分页内容列表 适用范围 ...

  6. Bundle使用&NSBundle

    之 前在初始化一个类的时候:TestViewController *viewcontroller=[[TestViewController alloc]initWithNibName:@"T ...

  7. 【编程技巧】Ext.QuickTips.init();

    启动悬浮提示(在你验证非法时.和现实提示语句等) 默认情况下悬浮提示没有启动:所以必须加上这句代码

  8. Codeforces 899 F. Letters Removing (二分、树状数组)

    题目链接:Letters Removing 题意: 给你一个长度为n的字符串,给出m次操作.每次操作给出一个l,r和一个字符c,要求删除字符串l到r之间所有的c. 题解: 看样例可以看出,这题最大的难 ...

  9. Codeforces 448 E. Divisors (DFS,储存结构)

    题目链接:E. Divisors 题意: 给出一个X,f(X)是X所有约数的数列(例6:1 2 3 6),给出一个k,k是递归的次数(例:k=2 : f(f(X)) ; X=4,k=2: 1 1 2 ...

  10. TypeError: 'encoding' is an invalid keyword argument for this function

    python 2.7 问题 data_file = open("F:\\MyPro\\data.yaml", "r", encoding='utf-8') 运行 ...