タグ付けされた質問 「board-game」

ボードゲームを含む課題のため。

30
プライムパワーからプライムを回復する
定義:素数はp nの形式で表現できる自然数です。pは素数で、nは自然数です。 タスク:プライムパワーp n > 1の場合、プライムpを返します。 テストケース: input output 9 3 16 2 343 7 2687 2687 59049 3 得点:これはcode-golfです。バイト単位の最短回答が優先されます。
13 code-golf  arithmetic  primes  king-of-the-hill  python  board-game  code-golf  number  subsequence  code-golf  ascii-art  code-golf  array-manipulation  decision-problem  grid  fastest-algorithm  logic-gates  logic  code-golf  cards  code-golf  rational-numbers  code-golf  math  number  sequence  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  code-golf  number  sequence  decision-problem  code-golf  ascii-art  number  code-challenge  sequence  arithmetic  sorting  code-golf  date  fastest-algorithm  code-golf  string  number  random  combinatorics  code-golf  combinatorics  code-golf  ascii-art  base-conversion  code-golf  array-manipulation  code-golf  string  code-golf  string  number  arithmetic  code-golf  kolmogorov-complexity  code-golf  string  array-manipulation  json  code-golf  puzzle-solver  code-golf  binary  graph-theory  code-golf  arithmetic  haskell  code-golf  string  cipher  code-golf  code-golf  string  parsing  alphabet  code-golf  string  code-golf  ascii-art  code-golf  string  number  code-golf  string  balanced-string 

11
緩い範囲の解釈
緩い範囲の解釈 ListSharpは、多くの機能を備えたインタープリター型プログラミング言語です。これらの機能の1つは、次のように機能する1つのインデックスベースの範囲作成者です。 あなたはと範囲を定義する(INT) TO (INT)か、単に(INT)どこの両方または単一のintは分からに行くことができる最大のint32値 次に、これらの範囲を使用して、境界を超えることを恐れずに配列の要素を抽出できます したがって: 1 TO 5 生成: {1,2,3,4,5} 3 生成: {3} AND演算子を使用して範囲を追加できます 1 TO 5 AND 3 TO 6 生成: {1,2,3,4,5,3,4,5,6} これは負の数でも機能することを忘れないでください 3 TO -3 生成: {3,2,1,0,-1,-2,-3} 課題は次のとおりです。 入力 文字配列および文字列として以前に定義された範囲句 出力 1インデックスの要素は範囲の位置に基づいています(非既存/負のインデックスは空の文字に変換されます) 勝つ方法 コードゴルフの挑戦として、あなたは勝つために最短のバイト数でプログラムを作成することになっています 空の文字は存在しないことが指摘されているため、無視する必要があります(ここでは、わかりやすくするためだけに示しましたが、混乱させています) テストケース: input array is: {'H','e','l','l','o',' ','W','o','r','l','d'} range clause: "1 TO 3" …
13 code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

4
ゲッターをゲット
タスク 私は誰もが自動コード生成と仕事中の時間の節約を愛していると思います。日中は多くのクラスとメンバーを作成するgetters必要があり、それらすべてを手動で作成する必要はありません。 タスクはgetters、すべてのクラスメンバーに対して自動的に生成されるプログラムまたは関数を作成することです。 入力 私たちの言語では、オブジェクトは非常に単純です。クラスおよびメンバーの名前は、文字から始まる必要[a-zA-Z]があり、文字のみを含めることができます[a-zA-Z0-9]。以下に例を示します。 class Stack { public overflow; protected trace; private errorReport; } 出力 これは、指定された例に基づいた有効な出力です。 class Stack { public overflow; protected trace; private errorReport; public function getOverflow() { return this->overflow; } public function getTrace() { return this->trace; } public function getErrorReport() { return this->errorReport; } } ゲッター getterメソッドの要件は次のとおりです。 …
13 code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

2
Goボードで動きます
Goゲームのボードポジションとプレイの動きが与えられます。移動が合法であるかどうか、合法である場合は新しいボードの位置を出力する必要があります。 Goの動きの簡単な説明:ゲームは、正方形のボードの空いている場所に黒と白のピース(「ストーン」)を交互に配置することで構成されています。互いに接続されている同じ色の部分のセット(4方向)はグループと呼ばれます。グループに隣接する空の場所(4方向)は、そのグループの「自由」と見なされます。自由度が0のグループがキャプチャされます(ボードから削除されます)。1つ以上の敵のグループをキャプチャしない限り、自身のグループをキャプチャする(「自殺」)移動は、違法です(実際にキャプチャされないようにプロセスで自由を得ます)。 関係者にとっては、ko(およびsuperko)に対処する必要はありません。つまり、koキャプチャは合法であると想定できます。それが何を意味するのかわからない場合は、上記のルールに従うだけで問題ありません。 入力:ボードサイズを表す2から19までの数字n、それに続くボード位置を表す0から2までのn数字のn行、スペースで区切られた3つの数字、続く移動を表します。ボードの位置では、0は空の場所、1は黒い石、2は白い石を意味します。この移動により、配置する石の列、行、および色(1または2)が得られます。列と行は0から始まり、範囲は0〜n-1(両端を含む)で、ボード入力と同じ順序でカウントされます。 与えられた役員の地位は合法であると仮定できます(すべてのグループには少なくとも1つの自由があります)。 出力:移動が合法であるかどうかに応じて1または0(または必要に応じてtrue / false)を含む行に続いて(合法的な移動の場合のみ)入力と同じ形式で新しいボード位置が続きます。 スコア:完全なソースコードのバイト数。小さいほど良い。非ASCII文字を使用した場合は20%の追加ペナルティ、無料で入手できるソフトウェアを使用してLinuxでコードをテストできない場合は20%の追加ペナルティ。 ルール:ネットワーク接続もサードパーティライブラリもありません。プログラムは、標準の入力および出力ストリーム、またはプログラミング言語に相当する標準を使用する必要があります。 例: 1) Input: 2 10 01 1 0 2 Output: 0 2) Input: 2 10 11 1 0 2 Output: 1 02 00 3) Input: 5 22122 22021 11211 02120 00120 2 1 1 Output: 1 00100 00101 11011 02120 …

3
音素アブギダ
キャラクター これらのUnicode文字を英語のIPA子音と呼びましょう: bdfhjklmnprstvwzðŋɡʃʒθ そして、これらのUnicode文字を英語のIPA母音と呼びましょう : aeiouæɑɔəɛɜɪʊʌː (はい、ː単なる長母音マークですが、この課題のために母音として扱います。) 最後に、これらは一次および二次ストレスマークです: ˈˌ ことに留意されたいɡ(U + 0261)小文字gではなく、一次ストレスマーカーˈ(U + 02C8が)アポストロフィではなく、ː(U + 02D0)は、結腸ではありません。 あなたのタスク 単語が与えられたら、続く子音の上に母音を重ね、前に来る子音の下に強勢マーカーを置きます。(質問のタイトルが示唆するように、子音母音シーケンスがユニットとしてまとめられているような書記体系はabugidaと呼ばれます。)入力が与えられると、出力ˈbætəlʃɪpを生成します。 æə ɪ btlʃp ˈ 単語は上に定義した、子音、母音、およびストレスマークの文字列であることが保証されます。連続する強勢記号は決して存在せず、それらは常に単語の先頭および/または子音の前に置かれます。 テストケース 母音が連続している場合があります。例えば、kənˌɡrætjʊˈleɪʃənとなり ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 単語が母音で始まる場合、子音と「ベースライン」に印刷:əˈpiːlとなり ː i əpl ˈ 初期の強調母音を含むテストケース:にˈælbəˌtrɔsなります ə ɔ ælbtrs ˈ ˌ 長い言葉:にˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəsなる æ ː ː ʊ uə aə …

2
中国チェッカー最長移動
中国のチェッカー、ピースは、他の部分の上にホッピングすることによって、又はそのようなホップのシーケンスを行うことで移動することができます。あなたの仕事は、ホップの可能な限り長いシーケンスを見つけることです。 入力 それぞれがボード上の場所を表す121個のゼロまたは1のシーケンス。ゼロは、場所が空であることを意味します。1はその場所が占有されていることを意味します。位置は左から右にリストされています。上から下へ。たとえば、このセットアップの入力は次のようになります 1011110011000001000000000000000000000000100000000001000000000000000000000000000001000000000000000000000001000001100111111 説明: 一番上の場所は緑色の部分で占められているため、入力の最初の数字は1です。2番目の行には空の位置が1つあり、次に占有位置が1つあるので、01次に来ます。3番目の行はすべて占有されているため、111です。4番目の行には、2つの空のスペースと2つの占有スペース(左から右へ)があり0011ます。次に、次の行に5 0、a 1、7が続き0ます。 そのセットアップのように、まっすぐ上を指すコーナーがあります。ボードにはいくつのピース(1から121)があってもかまいません。異なる色の部分は、異なって表されないことに注意してください。 出力 ボード上の任意のピースを使用したリーガルホップの最大長。同じ場所に複数回アクセスすることはできません(開始位置と終了位置を含む)。ただし、同じ部分に複数回ホップすることができます。正当なホップがない場合、output 0。合法的な非ホップ移動が存在するかどうかを考慮しないでください。 たとえば、上記のセットアップへの出力は3です。 入力と出力は、stdinとstdout、コマンドライン引数、関数呼び出し、または同様の方法で実行できます。 テストケース 入力: 0100000010000000000000000100000000000000000000000000000001010010000000000000000000000101000000000000000000100000000100001 出力:0(2つの部分が隣り合っていない) 入力: 0000000000111100000000011100000000011000000000100000000000000000000000000000000000000000000000000000000000000000000000000 出力:(1左上隅の1人のプレーヤーの初期設定)

2
リバーシエンジンを実装する
このゴルフのあなたの仕事は、リバーシ(オセロ)のゲームの動きを取り、結果をユーザーに表示するプログラムを書くことです。 入力 範囲[0-7]から取得した数字の文字列。数値の各ペアは、最初にX座標、次にY座標を表します。その範囲にない文字は無視する必要があります。 出力 入力が終了したときに誰がリードしているかなど、ゲームの結果の視覚的表現。これはグラフィック出力またはキーストローク出力の場合がありますが、ゲームの視覚的なグリッドであり、黒、白、および空の個別の文字/グラフィックシンボルである必要があります。 また、コードはエラーメッセージを出力し、不正な移動(同じ正方形が複数回入力されるか、タイルが反転しない正方形)が入力されると停止します。 スキップは適切に処理する必要があります。スキップは、1つの色に正当な動きがない場合に発生し、それらのターンはスキップされ、他のプレイヤーがプレイします。 黒が常に最初になります。 例 23 ........ ........ ........ ..bbb... ...bw... ........ ........ ........ b 232425140504032627 ........ ........ ........ b.bbb... bbbww... b.b..... ..b..... ..b..... b 2324322513 ........ ........ ........ ..bbb... ..www... ........ ........ ........ e 23242555 ........ ........ ........ ..bbb... ..bbw... ..b..... ........ ........ e

1
整数操作によりIEEE 754 64ビットのバイナリ浮動小数点数を実装します
(とりあえず質問「C」にタグを付けましたが、共用体をサポートする別の言語を知っている場合は、それも使用できます。) あなたの仕事は+ - * /、次の構造体の4つの標準的な数学演算子を作成することです。 union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 演算自体は整数部分のみを操作またはアクセスするため(演算中にdoubleと比較することはありません)、結果はまったく同じです(またはのような非数値の結果の場合は機能的に同等ですNaN)対応する数学演算がdouble代わりに直接適用されたかのように。 操作する整数部分を選択できます。おそらく、異なる演算子間で異なる部分を使用することもできます。(ユニオンのフィールドのいずれかから「unsigned」を削除することもできますが、それを実行するかどうかはわかりません。) スコアは、4つの演算子のそれぞれの文字のコードの長さの合計です。最低スコアが勝ちます。 IEEE 754規格に慣れていない私たちの人のために、ここではウィキペディアにそれについての記事です。 編集: 03-06 08:47 intfloat構造体にコンストラクタを追加しました。double /などを手動で設定するのではなく、テストに使用できます。

1
MENACEを実装する
バックグラウンド MENACE(M achine E ducable Nは oughts A ND C rosses E ngine)1960年代に英国のコンピュータ科学者ドナルド・ミッチーが作成したゲームNoughtsと十字のための初歩的な浅いの機械学習アルゴリズムです。元々は304個のマッチボックスで実装され、各マッチボックスにはボードの位置がラベル付けされており、色付きのビーズが含まれています(9色のいずれかで、可能な動きを表します)。Michieは、ボード上の動きのあらゆる組み合わせに対して、これらの304個のマッチボックスで十分であると計算しました。 あなたの中のより数学的な人は、実際にはN&Cボード上​​にNoughts、Cross、Blanksの19,683の可能な組み合わせがあることに気付くかもしれません。しかし、彼はこの数を減らす方法を計算しました(アルゴリズムを高速化し、マッチボックスを減らす可能性が高い!)。最初に、彼は次のような可能性のない動きをすべて削除しました。 ------- |X|0|X| | |0| | |X|X| | ------- (2つのoughtと4つの十字架) 次に、彼は回転を補正しました。たとえば、マッチ箱にある場合: ------- | |0|0| |X| |X| | |0| | ------- 同じ箱を使って ------- | |X| | |0| |0| | |X|0| ------- したがって、前述の色付きビーズは絶対的な位置ではなく、相対的な位置を表しています。たとえば、赤いビーズが左上を意味すると言った場合、ボックスの上部の画像を見て、次のように表示します。 ------- | |0|0| |X| |X| | …

2
キャメルアップカップ:AIボードゲームトーナメント
キャメルアップカップ2k18 このチャレンジでは、半人気のボードゲームCamel Upをプレイします。 キャメルアップ!ラウンドに勝つ、ゲームに勝つ、またはゲームに負けるためにラクダに賭けているプレイヤーがいるボードゲームです。これらの決定のそれぞれは、いくらかのお金を得るチャンスであなたに報酬を与えます、それは勝者を決定するものです。プレイヤーは、確率、ゲームの状態、および対戦相手のテナントを使用して決定を下す必要があります。これはプレイヤーがプレイする方法を示す短いビデオです。 遊び方 プレイ方法の大まかなアイデアを以下に示します。ビデオのいずれかを見ると、視覚効果があるため、より役立つ場合があります:) あなたの番には4つの選択肢があります。 ラクダを動かします。これは、移動していない人からラクダを選び、1〜3スペース間で移動します。あなたは1コインを取得します。5頭すべてのラクダが移動するとラウンドが終了し、その後すべて移動できます トラップを配置します。これはラウンドの終わりまでボードに残ります。+ 1 / -1トラップを選択します。ラクダまたはラクダのスタックがその上に着地した場合、それらは+ 1 / -1移動し、コインを受け取ります。正方形0にトラップを配置することはできません。ラクダがいる場所にトラップを配置することはできますが、その後に着くラクダにのみ影響します。 ラウンド勝者の賭け。ラウンドの勝者に賭けます。あなたは、あなたがそのラクダに賭ける1/2/2/3であるかどうかに応じて5/3/2/1を獲得します。 ゲームの勝者/敗者。ゲームの最後に誰が最初か最後かを賭けます。あなたがそのラクダに賭けたのが1/2/2/3だったかどうかに基づいて8/5/3/1/1(私は思う)を得る ノート: 5匹のラクダがいます。0から2までの位置からランダムに開始します。 ラクダを動かすと(これをトリガーするものについては上記を参照)、1〜3マス移動します。それらが別のラクダと正方形に配置される場合、それらは他のラクダの「上」に配置され、ラクダスタックが作成されます。ラクダが移動する場合は、ラクダスタック上でラクダの上にあるすべてのラクダを移動します。スタックの最上部にあるラクダが先頭にいると見なされます +1トラップに着地した場合(これをトリガーするものについては上記を参照)、1マス先に移動します。標準のスタッキングルールが適用されます。 ただし、-1トラップをヒットすると、1マス後ろに移動します。あなたは行くの下であれば、その広場にあるラクダのスタック。 ラクダがスクエア16に達すると、ゲームは終了します。これにより、ラウンドエンドとゲームエンドトリガーが直ちに呼び出されます。 ゲームの勝者/敗者のベットは、ラクダごとに1回のみ行うことができます。つまり、あなたが勝つためにラクダに賭けることができないとゲームを失います チャレンジ この課題では、4人のプレーヤーをプレイするPython 3プログラムを作成し、勝者はCamel Upのすべての栄光のゲームを取ります あなたのプログラムは以下を含むゲームステートを受け取ります: camel_track:ラクダの位置 trap_track:トラップの場所([trap_type(-1,1)、player]の形式のエントリ) player_has_placed_trap:プレイヤーがこのラウンドでトラップを配置したかどうかを通知する配列 round_bets:このラウンドで行われたベットの配列。フォームの[キャメル、プレーヤー] game_winner_bets / game_loser_bets:ラクダがゲームに勝つか負けるために作られたベットプレイヤーの配列。ベットしたプレイヤーではなく、ベットしたプレイヤーの価値のみを見ることができます。あなたは誰に賭けているかを知ることができます。#フォーム[キャメル、プレーヤー] player_game_bets:game_winner_bets / game_loser_betsの別の表現。繰り返しますが、ボットが行った賭けだけを見てください。 player_money_values:各プレイヤーが持っている金額を示す配列。 camel_yet_to_move:ラクダがこのラウンドを移動したかどうかを示す配列。 ゲームステートの上部には次のものもあります: player:プレーヤー番号(0〜3)を示す整数。 プレイヤーが返すものの構文は次のとおりです。 [0]:キャメルを移動 [1、trap_type、trap_location]:トラップを配置 [2、projected_round_winner]:ラウンド勝者のベットをする [3、projected_game_winner]:ゲームの勝者を賭ける [4、projected_game_loser]:ゲーム敗者のベットをする これはmove(player、gamestate)メソッドでラップする必要があります …

5
ストラテゴの戦いを評価する
ゲームStrategoでは、主なゲームメカニズムは、対戦相手のピースを自分のもので攻撃することです。このチャレンジでは、あなたの仕事はこれらの戦いの1つをシミュレートし、誰が生き残るかを言うことです。 スペック 入力として、Strategoピースを表す文字列のペアを取得します。ピースは"S 1 2 3 4 5 6 7 8 9 10 B"(SスパイでありB、爆弾です)の1つです。ペアの最初は攻撃者で、2番目は攻撃されます。 戦闘の結果を決定するためのルールは次のとおりです。 数値が大きいほど、小さい数値に勝ります["4", "6"] -> ["6"]。 両方が同じ場合、両方とも死にます:["7", "7"] -> []。 スパイは下部にあり、下にもあり1ます["S", "2"] -> ["2"]。 ただし、スパイがを攻撃する10と、スパイが勝ちます:["S", "10"] -> ["S"]。 ただし、が10攻撃している場合は、通常のルールが引き続き適用されます["10", "S"] -> ["10"]。 何かが爆弾を攻撃すると、爆弾が勝ちます:["5", "B"] -> ["B"]。 ただし、鉱夫(a 3)は爆弾を除去できます["3", "B"] -> ["3"]。 爆弾が攻撃者になることはありません。 スポッター(a 1)は、通常のメカニズムを使用して攻撃できますが、他のプレイヤーのランクを「推測」することもできます。これは、適切な表記で示すことができます。 推測が正しければ、他のピースは死にます:["1(5)", "5"] -> …

2
ボードゲームをプレイしましょう!
前書き ボードゲームは子供たちの間の古典的な遊びですが、ボードゲームを少しずつプレイすることに退屈していると感じる子供もいます。現在、彼らはボードに手を出す前に結果を表示したいと考えています。 チャレンジ このボードゲームを想定してください: >---#<---X---<X<--#-$ > means the start of the game - means a position without danger < means the player should return one step back X means the player won't move next round # means a portal where the player returns to the start position $ the first …

2
Xが3より大きく、XとYの間に少なくとも2つの差がある
私はいくつかのC ++をゴルフしようとしています。この条件を短くすることは可能ですか? X > 3 & X - Y > 1 (もちろん、空白の削除は別として。) だから、X少なくともです4がX >= Y + 2。 XおよびYは、[0,5]間隔の整数です。 ビット単位の数式を見つけようとしましたが、失敗しました。
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

4
決定論的なGo AIを構築する
先日考えた興味深い問題があります。それは、コードが持っているプロパティだけでなく、他のコードとゲームをプレイすることによって、他のコードと競合するコードを含んでいます。 あなたのタスクは、Goボードの現在の状態を取得し、実行または通過する動きを決定するプログラムを構築することです。 プログラムは、入力として次を受け入れます。 19行。各行に19文字があり、現在Goボード上にあるピースを表します。の文字は0、空の正方形を表し、1黒で、2白です。 各プレイヤーが持っている囚人の駒の数を表す2つの数字(黒、次に白)。 移動する順番を表す1つの数字(黒または白)。上記のように、1黒であり、2白です。 次のいずれかを出力します。 a b移動する座標を表す座標のペア。1 1は左上の正方形で、最初と2番目の数字はそれぞれ下と右への移動を表します。 pass渡す動きを表す文字列。 たとえば、プログラムは次の入力を受け取る場合があります。 0000000000000000000 0000000000000000000 0000000000000000000 0001000000000002000 0000000000000000000 0000000000000000000 0001210000000000000 0000100000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0002000000000001000 0000000000000000000 0000000000000000000 0000000000000000000 0 0 1 これは、わずかな動きしかプレイされていないゲームを表します。 次に、プログラムはを出力します6 5。これは、「上から6番目、左から5番目のポイントに黒い石を置く」ことを意味します。これは、で白い石をキャプチャし7 5ます。ボードの状態は次のように変わります。 0000000000000000000 0000000000000000000 0000000000000000000 0001000000000002000 0000000000000000000 0000100000000000000 0001010000000000000 0000100000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 …

6
ルミクブを遊ぼう!
注:これはゲームRummikubのバリエーションに関連しています 背景とルール Rummikubはタイルベースのゲームです。赤、オレンジ、青、黒の4色があります。各色には13のタイル(1から13までのラベルが付いています)があり、色に依存しない2つのジョーカーもあるため、合計で54個になります。このRummikubのバリエーションでは、各プレーヤーは14タイルを受け取り、タイルの数が一定になるように、ラウンドごとに1つのタイルを取得し、別のタイルを1つずつドロップする必要があります。プレイヤーはお互いのタイルを見ることはありません。目標は、すべてのピースが少なくとも1つのグループに属するようにタイルをグループ化することです(以下を参照)。プレーヤーがすべてのピースをグループ化すると、タイルボードをドロップして、ピースを公開します。他の人は、すべての組み合わせが有効かどうかを確認し、有効な場合は、プレイヤーがラウンドに勝利します。 タイルをどのようにグループ化できますか? グループには2つのタイプしかありません。 マルチカラーグループ: 彼らは3つまたは4つのタイルで構成されています。 同じ番号のタイルのみが含まれています。 すべてのタイルは異なる色です。 例:RED 9, BLUE 9, BLACK 9。 単色グループ: それらは少なくとも3つのタイルで構成されます。 13個を超えるタイルを含めることはできません。 それらには、昇順で異なる連続番号のタイルのみが含まれます。 すべてのタイルは同じ色です。 でラベル付けされたタイルは、でラベル付けされたタイルの後に配置され1 ない場合があります13。 例:RED 5, RED 6, RED 7。 待って、ジョーカーは何をしますか? ジョーカーはゲームのどの部分でも代用できます。たとえば、最初の例は JOKER, BLUE 9, BLACK 9、RED 9, JOKER, BLACK 9またはになりRED 9, BLUE 9, JOKERます。同じことが他の例にも当てはまります。ただし、同じグループに2人のジョーカーを配置することはできないため、このようなことJOKER, ORANGE 8, JOKERは禁止されています。 仕事 Rummikubタイルグループを指定して、それが有効かどうかを判断します。2つのジョーカーを除いて、重複するタイルが表示されないこと、および入力として受け取ったタイルが有効であること(たとえば、60表示されないようなもの)が保証されます。 入出力 入力を取り、標準的な方法で出力を提供できます。 …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.