zoukankan      html  css  js  c++  java
  • [hdu4388]Stone Game II

    不管是否使用技能,发现操作前后所有堆二进制中1的个数之和不变。那么对于一个堆其实可以等价转换为一个k个石子的堆(k为该数二进制的个数),然后就是个nim游戏。

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 int t,n,ans,a[101];
     4 int main(){
     5     scanf("%d",&t);
     6     for(int ii=1;ii<=t;ii++){
     7         scanf("%d",&n);
     8         for(int i=1;i<=n;i++)scanf("%d",&a[i]);
     9         ans=n%2;
    10         for(int i=1;i<=n;i++)
    11             while (a[i]){
    12                 ans^=a[i]%2;
    13                 a[i]>>=1;
    14             }
    15         if (ans)printf("Case %d: Yes\n",ii);
    16         else printf("Case %d: No\n",ii);
    17     }
    18 }
    View Code
  • 相关阅读:
    笔记0510
    笔记0514
    笔记0521
    GridView专题
    笔记0418
    笔记0516
    笔记0515
    笔记0507
    Python 安装与环境变量配置
    ffmpeg 下载安装和简单应用
  • 原文地址:https://www.cnblogs.com/PYWBKTDA/p/11254631.html
Copyright © 2011-2022 走看看