P2197 【模板】nim游戏
生活随笔
收集整理的這篇文章主要介紹了
P2197 【模板】nim游戏
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題面:https://www.luogu.org/problem/P2197
本題的解法是把nim游戲看做是有向圖游戲用SG函數來解的.Code: #include<cstdio> #include<cstring> #include<algorithm> using namespace std;int T,n,m,x,f[10100],a[10010],sg[100010]; bool vis[100010];void getSG(int n) {memset(sg,0,sizeof(sg));for (int i=1; i<=n; i++){memset(vis,0,sizeof(vis));for (int j=0; f[j]<=i; j++)vis[sg[i-f[j]]]=1;for (int j=0; j<=n; j++)if (!vis[j]){sg[i]=j; break;}} }int main() {for (int i=1; i<=10001; i++) f[i]=i;getSG(10000);scanf("%d",&T);while (T--){scanf("%d",&n);int ans=0;for (int i=1; i<=n; i++){scanf("%d",&a[i]);ans^=a[i];}if (ans) printf("Yes\n");else printf("No\n"); }return 0; }轉載于:https://www.cnblogs.com/ukcxrtjr/p/11567235.html
總結
以上是生活随笔為你收集整理的P2197 【模板】nim游戏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: P1199 三国游戏
- 下一篇: 如何编写一个Systemd Servic