Nim和什么鬼。。求教博弈论Orz


1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 #include <cstdlib> 5 #include <map> 6 #include <string> 7 #include <vector> 8 #include <stack> 9 #include <cmath> 10 #include <queue> 11 #include <cstdio> 12 #include <set> 13 using namespace std; 14 15 16 int T,x,f,n,s; 17 int main(){ 18 scanf("%d",&T); 19 while(T--){ 20 scanf("%d",&n); 21 for(int i=1;i<=n;i++)scanf("%d",&x),s^=x,f|=x!=1; 22 printf("%s\n",!!s==f?"John":"Brother"),s=f=0; 23 } 24 }
本文深入探讨了Nim博弈论的基本原理,并通过一段精心设计的C++代码展示了如何利用异或运算和位运算符来判断Nim游戏中的胜负情况。通过对输入的堆数进行异或操作,我们能够快速得出当前局面是否为必胜状态,从而帮助玩家制定最优策略。
430

被折叠的 条评论
为什么被折叠?



