题目
传送门:QWQ
分析
蒟蒻根本不会博弈论。。。。。
只知道异或和判断Nim游戏。。
不是很懂输出的选择,所以发一篇博客以待复习
代码
1 #include <bits/stdc++.h> 2 using namespace std; 3 const int maxn=600000; 4 int a[maxn], n; 5 int main(){ 6 scanf("%d",&n); 7 for(int i=1;i<=n;i++) scanf("%d",&a[i]); 8 int k=a[1]; 9 for(int i=2;i<=n;i++) k^=a[i]; 10 if(k==0) {puts("lose"); return 0;} 11 for(int i=1;i<=n;i++){ 12 if((a[i]^k)>=a[i]) continue; 13 printf("%d %d ",a[i]-(a[i]^k),i); 14 a[i]^=k; 15 break; 16 } 17 for(int i=1;i<=n;i++) printf("%d ",a[i]); 18 return 0; 19 }