求到达必败态的方法数 ZOJ 3067 Nim

来源:互联网 发布:网络电影脱轨下载 编辑:程序博客网 时间:2024/04/19 09:58
/*http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3067题意:求胜态到达必败态的方法数Nim*/#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>using namespace std;int s[1005];int main(){#ifndef ONLINE_JUDGEfreopen("in", "r", stdin);#endifint n;while(scanf("%d", &n), n){int res = 0;for(int i=0; i<n; i++){scanf("%d", &s[i]);res ^= s[i];}if(res){int num = 0;for(int i=0; i<n; i++)if( (res^s[i]) <= s[i])// 要注意(),表示对s[i]的操作可以到达必败态num++;printf("%d\n", num);}elseprintf("0\n");}return 0;}


原创粉丝点击