羅区P1146コインフリップ

タイトル説明

テーブル上のコインの行は、合計N個の片は、各コインは右サイドアップです。今フリップ尾に入れ、すべての硬貨は、各ルールは、任意の可逆であるN-1 コイン(フェイスアップが反対方向、またはその逆に反転されます)。操作の最短配列(コイン投げN-1となるたびに単一の操作)を探しています。

入力形式

自然数N Nは、以下である100 偶数)。

出力フォーマット

最初の行は、整数含まSを、必要な動作の最小数を表します。のS ラインそれぞれが含む行(各操作の後にデスクコインの状態を表すN個の整数(0 または1 :)、各硬貨の状態を示す0 上方陽性、および- 1 、バックアップ-余分なスペース)が許可されていません。

動作プログラムの様々なために、辞書順最小の出力は、一種類のみです。

サンプル入力と出力

入力#1
4
出力#1
4 
0111 
1100 
0001 
1111
1つの#include <ビット/ STDC ++ H>
 2  使用して 名前空間STDを、
3  CONST  INT MAXN = 101 4  BOOL [MAXN]。
5  INT N。
6  INT メイン()
 7  {
 8      CIN >> N。
9      COUT << N << ENDL。
10      のためには、int型 i = 1 ; iがn = <; iは++ ){
 11          のためのint型 J = 1 ; J <= nであり、j ++ ){
 12              であれば(!J = I){
13                  場合([J])[j]が= 0 ;
14                   [J] = 1 15              }
 16              COUT << [J]。
17          }
 18          COUT << ENDL。
19      }
 20      リターン 0 21 }

 

おすすめ

転載: www.cnblogs.com/anbujingying/p/11293671.html