春祭りでいい子なので(ニームゲーム)

トピックリンク:

http://acm.hdu.edu.cn/showproblem.php?pid=1850

リンクを説明します。

https://www.cnblogs.com/jiangjun/archive/2012/11/01/2749937.html

効果の件名:

;カードの各山の数は、Ni(i = 1 ... M)となりましたトランプヒープMがあるテーブルの上:ここでは、小さな二つのゲームがあり 、 2つのテイクが点灯し、すべてのステップは、任意に選択し、それらの束を削除することができますすべてのカード、すべての光を取るためにテーブルの上にポーカー、ゲームオーバーです。カードの勝者を取るために最後の一人。
:今、私たちは最終的には、上の手が勝者であるか負である勉強したくない、私はちょうどお聞きしたい
「?人々は、上側の手を獲得したい場合は、いくつかのオプションが最初のステップがあるんです。」 -

入力
テストケースを複数備えた入力データは、二行、最初の整数M(1 <Mを<= 100)を含む行を表す各試験は、Mの整数をニッケル(1 <=を含む行に続く、スタックのトランプカードの数を示しますNI <= 1000000、I = 1 ... M)、Mは、トランプの各スタックの数を表します。M 0は、入力データの終わりを示します。
出力
あなただけの人が勝つために取得した場合、してください出力彼の計画の最初のステップの生の数、それ以外の場合は出力0、インスタンスごとに出力行。
具体的なアイデア:
まず、状態の特定の種類、この状態は故障する運命にある(A、B、C)^ B ^ C == 0のために。だから我々は、すべてのn 3の状態とみなすことができ、それが想定されます(<B <C)、Cもしそうであれば(^ - B A)> 0、そして私たちは、この時間を保証することができます
勝利。
ACコード:
1つの#include <ビット/ STDC ++ H>
 2  使用して 名前空間STDを、
3位LL定義長い 長い
4位LSON Lを、中間、RTを定義<< 1 
5#定義rsonミッド+ 1、R、RT << 1 | 1 
6位INF定義0x3f3f3f3f 
7  のconst  int型 MAXN = 2E5 + 100 8  INT [MAXN]。
9  INT メイン(){
 10  INT N。
11  一方(〜のscanf(" %d個"、&​​N)&& N){
12  INTの和= 0 13  のためにint型 i = 1 ; iが++; iが<= N){scanf関数(" %のD "、および[I]);和^ = [I];}
 14  INT ANS = 0 15  のためには、int型 I = 1 <; iがN ++ = iは{)
 16  であれば([I](和^ [I]))ANS ++> 17  }
 18のprintf(" %Dを\ n " 、ANS)。
19  }
 20  リターン 0 21 }

 

おすすめ

転載: www.cnblogs.com/letlifestop/p/10931341.html