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

この課題は一般に、ゲームまたはゲームの一部に基づいているか、関連しているか、またはシミュレートしています。

3
Hexcellent Minesweeping
Hexcellsは、マインスイーパをベースにした六角形のゲームです。(完全な開示:Hexcellsとは何の関係もありません。実際、ゲームはあまり好きではありません。)Hexcellsのルールのほとんどは、Generalized Minesweeper(Minesweeperが任意のグラフで再生)で簡単に表現できます。最も困難なものである{X}と-X-ルール。 {X}ルールは、セルの境界線のことを教えてくれるX鉱山と鉱山これらの全てが連続した経路で互いに接していること。たとえば、ボードがある場合: ? ? ? {3} ? ? ? 鉱山配置の6つの可能性は * . . . . . . * * * * * * {3} . * {3} . . {3} * . {3} * . {3} * * {3} . * . * * * * . * . …

4
ヒドラスレイヤーの帰還
あなたがそのヒドラを殺してからしばらく経ちましたが、あなたは長年栄光を浴びていましたが、今では人々はあなたを洗い流していると呼んでいます。さて、あなたは彼らが間違っていることを証明する時、あなたは別のヒドラの行方を聞いたことがあります。単にそれを殺すと、あなたはあなたが値するすべての栄光を授与されます。 あなたは剣を受け取るために武器庫に到着しますが、それらはすべて通常の剣ではなく、残っているのはセクターだけです。nセクターはHydraの頭の数をnで除算しますが、頭の数がnで割り切れる場合にのみ使用できます。 もう一度、あなたはヒドラを殺すのを助けるためにいくつかのコードを書くつもりです。コードは、ヒドラの頭の数を入力として受け取り、戦いを開始し、ヒドラが毎ターン成長する頭の数、および使用できるnセクターのリストを入力します。あなたのコードは、可能な限り迅速にヒドラを殺すための動きの最適なパターンを出力します 戦いの各ターンでは、1つのスライスを選択して、スライスの後にヒドラの頭が1つだけの場合は勝ち、そうでない場合は頭を成長させます。あなたは決して動きをすることはできませんし、可能な動きがなければ損失します。 解決策が不可能な場合は、解決策以外の何か、たとえば空のリスト、何もない、数字のゼロなどを出力できます。 これはコードゴルフであるため、回答はバイト数として記録され、少ない方が良い結果が得られます。 テストケース ここにいくつかの超基本的なテストケースがありますが、リクエストに応じてさらにテストケースが追加されます。 24 heads, 1 heads per turn, [2,3] -> [3,3,2,3] 25 heads, 2 heads per turn, [2,3] -> No solutions 4 heads, 2 heads per turn, [2] -> No solutions 4 heads, 3 heads per turn, [2,5] -> [2,5] 10 heads, 17 heads …
13 code-golf  math  number  game 

1
ハイドラスレイヤーになる
あなたはこの地域の最高で最も有名なヒーローです。最近、ヒドラが近くの渓谷でぶらぶらしているという噂がありました。あなたがあなたであるという勇敢で高潔なヒーローであることは、あなたが今日いつかそれをチェックアウトすることになると考えています。 ヒドラエの問題は、頭を切り落とそうとするたびに、新しい頭が成長することです。幸いなことに、あなたは一度に複数の頭を切り落とすことができる剣を持っています。しかし、ヒドラがあなたの剣のカットよりも少ない頭を持っている場合、あなたはヒドラを攻撃することはできませんキャッチがあります。ヒドラの頭が正確にゼロになったら、あなたはそれを殺しました。 呼ばれる特殊な剣もあり等分ハイドラの頭の半分を切ったが、ヘッドの数が偶数である場合にのみします。ヘッドの数が奇数の場合、Bisector はまったく使用できません。これは、ゼロヘッドの切断とは異なります。 あなたはヒドラを殺すための最良の方法を見つけるためにコンピュータープログラムを書くことに決めました。 仕事 入力として与えられます Hydraが始まる頭の数 Hydraが毎ターン再生する頭の数 それぞれが使用可能な剣のリスト(それぞれが二等分線であるか、各ターンで一定数の頭を切る) 可能な限り少ないターンでヒドラを殺す動きのリストを出力する必要があります。ヒドラを殺す方法がない場合は、そのことを示す他の値を出力する必要があります(言語が強く入力されている場合は空のリストでも構いません)。ヒドラを殺すための最適な方法が複数ある場合、それらのいずれかまたはすべてを出力できます。 これはコードゴルフの質問なので、回答はバイト単位で記録され、バイト数は少ない方が良いでしょう。 テストケース リクエストにより利用可能 5 heads, 9 each turn, [-1,-2,-5] -> [-5] 12 heads, 1 each turn, [/2,-1] -> No solution 8 heads, 2 each turn, [-9, -1] -> [-1,-9] 3 heads, 23 each turn, [/2,-1,-26] -> [-1,-1,-26,-26,-26,-26,-26,-26,-26,-26] 16 heads, …
13 code-golf  math  game 

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 

7
フラットな推測ゲーム
私がプレイしたいゲームがあります。有限サイズのグリッドで発生します(ただし、球のようにラップされています)。そのグリッドでは、ランダムな(整数のみの)ポイントが選択されます。次に、ユーザーである私は、座標入力を求められます。入力がランダムポイントと正確に一致する場合、勝ったと言われます。それ以外の場合、入力とランダムポイント間のポイント単位の距離が通知されます。たとえば、私が推測(2,2)し、ランダムなポイントがにあった(4,3)場合、距離はになりますsqrt[(3-2)^2 + (4-2)^2] = sqrt[5]。 プレイヤーがポイントの正しい場所に到着するまで、ゲームは続行します。 目的上記のゲームの機能バージョンを作成します。そのためには、完全なプログラムを作成する必要があります。プログラムで行うべきことは次のとおりです。 ボードの高さと幅の2つの入力を要求します。原点は、ボードの左上にあります。これらの入力はを超えません1024。 そのボード上のランダムポイントを選択します。これが推測されるポイントになります。 ターンをシミュレートする入力を受け入れます。入力は、スペースで区切られた整数のペアまたは2つの個別の整数入力のいずれかになります。この入力に応じて、プログラムは次の2つのいずれかを実行します。入力が選択したランダムポイントと一致する場合、ユーザーの勝利を示すメッセージを出力します。「あなたが勝ちました!」と提案します。それ以外の場合は、ユーザーの入力ポイントとランダムポイントの間の距離を出力します。 いずれの場合も、ターンカウンターを増やす必要があります。 ユーザーが勝利を収めたら、ユーザーが取ったターン数を表示します。その後、プログラムは終了します。 ボーナス ボーナスは、このリストに表示される順序で適用されます プログラムがD、ゲームが行われる次元を記述する入力整数を取る場合、-150バイト。たとえば、の場合D = 3、3整数のランダムポイントを作成し、3整数入力を取得して、それらのポイント間の距離を出力します。 -50%(または+ 50%の場合score < 0)ユーザーが以前に与えられた寸法とターンカウンターのグリッドで推測した場所を示すボード(ASCIIまたは画像)のグラフィック表現を提供する場合。(最初のボーナスに行くと、このボーナスはモード2Dと1Dモードにのみ適用されます。3Dグラフィカル出力を追加すると、-50%が追加されます。) -60バイト(最初に入力によって選択された、つまり、与えられたとき0に通常のゲームモードを実行し、与えられたときに1このゲームモードを実行する)ゲームポイントを提供できる場合 ラッピングの詳細 ラッピングは、3番目のボーナスで移動ポイントが境界のいずれかを横切って移動する場合にのみ発生します。この場合、移動ポイントは次のようにそれぞれのポイントにワープされます。 ... ... ..R (move right) R.. ... ... この折り返し動作は、ポイントが方向を変えたという事実に加えて、ユーザーの推測には影響しません。 リーダーボード この投稿の下部にあるスタックスニペットは、a)言語ごとの最短ソリューションのリストとして、b)全体的なリーダーボードとして、回答からカタログを生成します。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 # Language Name, N bytes N提出のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば: # Ruby, <s>104</s> <s>101</s> 96 bytes ヘッダーに複数の数字を含める場合(たとえば、スコアが2つのファイルの合計であるか、インタープリターフラグペナルティーを個別にリストする場合)、実際のスコアがヘッダーの最後の数字であることを確認します。 # …
13 code-golf  game 

2
何を待っていますか?(麻雀ソルバー)
チャットでのディスカッションから@MartinBüttnerに感謝します 麻雀は、アジアで非常に人気のあるタイルゲームです。通常、4人のプレイヤーでプレイされ、ゲームの目標は、タイルを使用して有効なハンドを完了する最初の人になることです。この課題では、ゲームの簡易バージョンであるPPCG麻雀を検討します。 PPCG麻雀には3つのスーツがあります- m、pそしてs-タイルはから1まで番号が付けられてい9ます。各タイルのコピーは正確に4つあり、タイルは番号とそれに続くスーツ(たとえば3m、9s)で示されます。 完成したPPCG麻雀ハンドは、3セットと4セットで構成され、合計14タイルです。 3つのセットは次のいずれかです。 同じタイルの3つ(たとえば4s 4s 4s、ではない4m 4p 4s)、または 同じスーツ内の3つの連続したタイルのシーケンス(例:1s 2s 3sor 6p 7p 8pnot 3s 4m 5mor or 3p 5p 7p)。シーケンスはラップしません(9m 1m 2m無効です)。 ペアは、単純に2つの同一のタイルです(例:)5s 5s。 チャレンジ プログラムには、13個のタイルのスペースで区切られた手が届き、各タイルは4回までしか表示されません。完全なプログラムまたは文字列を受け取る関数のいずれかを記述できます。 あなたの仕事は、ハンドに追加すると完成したPPCG麻雀ハンドを形成する可能性のあるすべての14番目のタイル(「待機」)を見つけることです。出力されるタイルはスペースで区切る必要がありますが、順序は任意です。先頭または末尾の空白は許可されます。 プログラムは、1分以内で妥当な時間内に実行する必要があります。 例 Input: 1m 1m 1m 4s 4s 4s 7p 7p 7p 3m 3m 3m 9s Output: 9s Input: …
13 code-golf  game 

2
フロッガー風ゲーム
古き良きアーケードゲームFroggerにコードゴルフスタイルのリバイバルを与えてみてはいかがでしょうか。 あなたの仕事は、できる限り少ない文字数のコードで、この古典的なゲームのバージョンを作成することです。選択した言語を使用します(jQueryなどのライブラリが許可されます)。 必要条件 あなたは3つのライフを持​​ち、以下から1つのライフを失います: ゲームシーンの外に移動します。 車両に襲われる。 水に飛び込む。 すでに占有されている家にジャンプします。 時間がない。 カエルは矢印キーで動きます。 5つの家(上部の草の間のスペース)の間隔が設定された「テレポート」バグがあります。 あなたが得る10歩前進を移動する際のポイントを、200ボーナスポイントのバグとキャッチ500個の空の家に到達したときにポイントを。 レベルごとにタイマーが刻み込みます(車両、カエル、ログも各レベルで速く移動する必要があります)。 5車線の車線と、丸太のある3車線とカメのある2車線があるはずです。 各レーンは、ランダムに選択された速度で移動する必要があります(理由内)。 利用可能な家が占領されると、カエルが開始点に現れ、あなたはそのカエルをその点からコントロールします。 5つの家がすべて占有されると、タイマーが再起動し、家が空になります。ゲームが終了すると、すべてのレベルのポイントが計算されて表示されます。 追加情報 スタート画面、音楽、ハイスコア表は必要ありません。また、ピクセルのデザインを模倣する必要もありません。白黒にしたいですか?本当にミニマルにしたいですか?または、カエルや車の代わりに立方体ですか?正常に動作します!コードを厳しくしてください。最短のコードが勝ちます!

3
言葉を推測する(別名Lingo)
この課題の目標は、可能な限り少ない試行回数で単語を推測できるプログラムを作成することです。Lingo TVショー(http://en.wikipedia.org/wiki/Lingo_(US_game_show))のコンセプトに基づいています。 ルール コマンドラインの最初の引数として渡された単語の長さを考えると、プレーヤープログラムは、標準出力に推測を書き込み、その後に単一の文字を書き込むことによって、単語を推測する5回の試行を破棄し\nます。 推測が行われた後、プログラムは標準入力で文字列を受け取り、その後に1 \n文字が続きます。 文字列は推測する単語と同じ長さで、次の文字のシーケンスで構成されます。 X:これは、与えられた文字が推測する単語に存在しないことを意味します ?:これは、与えられた文字が推測する単語に存在するが、別の場所にあることを意味します O:これは、この場所の文字が正しく推測されたことを意味します 推測する単語がある場合たとえば、dentsと、プログラムは言葉を送りdozes、それが届きますOXX?Oので、dおよびs正しい、e紛失され、oかつz存在しません。 手紙は推測する単語よりも推測する試みの中で複数回存在する場合、それがされますように注意してくださいではないとしてマークされる?とO推測する単語の文字の出現箇所の数よりも多くの倍。たとえば、推測する単語がcoziesで、プログラムがを送信する場合、検索するのは1つだけなのでtosses、受信します。XOXXOOs 単語は英語の単語リストから選択されます。プログラムによって送信された単語が正しい長さの有効な単語でない場合、試行は自動失敗と見なされ、のみXが返されます。 プレーヤープログラムは、wordlist.txt1行に1ワードという名前のファイルが現在の作業ディレクトリに存在し、必要に応じて読み取ることができると想定する必要があります。 推測はアルファベットの小文字([a-z])のみで構成する必要があります。 他のネットワークまたはファイル操作はプログラムに対して許可されていません。 のみで構成される文字列Oが返されるか、プログラムが5回試行して単語を推測できなかったときに、ゲームは終了します。 得点 ゲームのスコアは、次の式で与えられます。 score = 100 * (6 - number_of_attempts) そのため、最初の試行で単語が正しく推測された場合、500ポイントが与えられます。最後の試行は100ポイントの価値があります。 単語の推測に失敗すると、ゼロポイントが付与されます。 ピット プレーヤープログラムは、4〜13文字の単語長ごとに100のランダムな単語を推測させることで評価されます。 ランダムな単語選択は事前に行われるため、すべてのエントリは同じ単語を推測する必要があります。 受賞したプログラムと受け入れられた回答が、最高のスコアに到達します。 https://github.com/noirotm/lingoのコードを使用して、プログラムはUbuntu仮想マシンで実行されます。コンパイルおよび/または実行するための合理的な指示が提供されている限り、どの言語での実装も受け入れられます。 私はgitリポジトリのrubyでいくつかのテスト実装を提供していますが、それらから自由にインスピレーションを受けてください。 この質問は公開された回答のランキングで定期的に更新されるため、チャレンジャーはエントリを改善できます。 公式の最終評価は7月1日に行われます。 更新 エントリは、wordlistN.txtファイルの存在を想定して、4〜13のNの現在の単語長の単語リストの読み取りを高速化できます。 たとえば、wordlist4.txt4文字すべての単語を含むファイル、wordlist10.txt10文字すべての単語を含むファイルなどがあります。 最初のラウンドの結果 2014年7月1日の時点で、3つのエントリが提出され、次の結果が得られました。 4 5 6 7 8 9 10 11 12 …

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 …

1
ソリティアの夢-勝てるソリティアスターティングハンドを作成する
それは私です。ケーブジョンソン。 5月21日です。あなたは地球上で最高の会社であるAperture Scienceで働いており、明日、私たちの主力ウィンドウシステム(またはWindowS)のバージョン3.0 CavOSをリリースします。残念ながら、明日の朝、私たちの主要な競合他社はWindowSのバージョン3.0もリリースしています! 競合するWindowSには、CavOSにはない機能が1つあるという、Cave JohnsonのCEOに漏らされました。KlondikeSolitaireのゲームです。私、ケイブ・ジョンソンは、この省略が大幅な売上減少につながることを懸念しています。そのため、私、ケイブジョンソンは、プログラミングインターン間の競争を考案して、ソリティアのゲームを作成しました。エントリーが選ばれたプログラマーは、刺激的なGlaDOS AIプロジェクトに参加する機会を得ます。 私、ケイブ・ジョンソンには、いくつかの要件があります。 ソフトウェアは明日出荷する必要があるため、すでに印刷され、イメージ化されたフロッピーのスペアセクターに収まるように、最短のプログラムが選択されます。 ゲームプレイについて心配する必要はありません。私たちの顧客はプリンターを持っていますか?私が必要なのは、あなたのプログラムが以下を示すリストを作成することだけです:デッキのカードの順序と、7つの山のそれぞれの内容。デッキは上から配られます。杭は下から見えるようになります。Hearts、Diamonds、Clubs、およびSpadesには、略語H、D、C、Sを使用します。King、Queen、Jack、およびAceには、略語K、Q、J、Aを使用します。各カードはスペースで区切る必要があります。最初の行はデッキを示し、2番目は最初の最小のパイルのカード、3番目は2番目のパイルのカードなどを示します。必要に応じて、10の代わりにTを使用できます。 ここではレモネードを作っています-レモンを吸いません。私、ケイブ・ジョンソンは負けたくないし、顧客も好きではない。すべてのゲームは勝つ必要があります ゲームはランダム化する必要があります。単一のゲームをエンコードしようとしません。クロンダイクには7000兆のハンドがあり、それらの約90%が勝ちです。256以上の異なるハンドを作成できるプログラムに満足しています。言語に(タイマーなどから)乱数を取得する方法がない場合は、言語に適した方法でシードを取得できると想定してください。 お客様はかなり賢いです。勝ち勝ちのために、彼らはデッキ3で時間制限なしでDraw 3をプレイしていると仮定します Apertureの皆さん(およびすべてのもの)を代表して、皆さんの幸運を祈ります。お待ちしています。 「キャロライン?どうやったらこの事を止められるの?」 性格外:Windowsのルール3、ドロー3、ベガス以外のソリティアを想定します。私はすべてのtを渡り、すべてのiにドットを付けようとしましたが、質問があるかどうか尋ねます。幸運を。 出力例: 5H AS 7C 8S QH ... AH JS 10S JC JH 7C 9D AC 8D 7C . . .
13 code-golf  game 

2
BlackJack KOTHコンテスト
ブラックジャック 元のKOTHチャレンジに取り組んでいたので、別のチャレンジを思いつきました。私にとって、これらのAIチャレンジの楽しみは、非常にシンプルなゲームを微妙にプレイする比較的シンプルなボットを改良することです。カードゲームの確率的性質のため、ブラックジャックはTPDと同様に興味深いKOTHゲームになる可能性があると思います。 すべてのルールは、このウェブサイトのBlackJack with shoesの説明に基づいています カードとデッキに関する規則 ボットは4人の競技者と1人のディーラーのテーブルでプレーします 1つの靴(シャッフルデッキ)は、すべてのプレイヤーとディーラーによって共有されます使い果たされるまで、その時点で新しいランダムにシャッフルされたデッキが追加され、プレイが続行されます。ボットは(この時点では)この新しいデッキの追加について通知されません。この機能の欠如が十分な苦痛/トラブルを引き起こす場合、そのような通知は追加されるかもしれません。 ラウンドごとに10のバイインがあり、カードは無料です パーフェクト/理想的なハンドのスコアは21です すべてのフェイスカードの値は10です すべての数字カードはその価値があります エースは11または1の価値があります。これは、ボットではなくフレームワークによって自動的に処理されます。 あたりとしてのルール、すべてのプレイヤーのカードがフェイスアップを配らと表示されています。ディーラーのカードの1つは裏向きで、もう1つは表向きです。 得点 エースを11として使用する21を超えるスコアは、エースの値を1に強制的に下げます。 21を超えるスコアは、ボットを「バスト」する21のしきい値より下に強制することはできません。 ディーラー ディーラーは彼がバストするまで引きます、または17 点を超えた時点で、彼は立つことを強制されます ベットとチップ 各ラウンドの開始時に、バイイン10のは、そう、最低があり、充電されている株式 10のは、最小賭け 1のNOTE -賭けは賭けの引数の絶対値であるので、気にしないでください負の賭けをしようとしています。 バイインを買う余裕のないボットはコンテストから除外されます 賭けをするとき、ボットは持っているチップよりも多く賭けることはできません 賭けが可能であれば、賭けたチップはボットから即座に取り除かれ、賭け金に追加されます ベットに勝つと、ボットに2xチップがベットされます。ただし、ボットのチップからベットが差し引かれるため、ボットは偶数になり、ベットの1倍になります。 ボットはディーラーのスコアよりもスコアが大きい場合にのみベットに勝ちます ゲームプレイ内訳 片手 ゲームが開始されると、各プレーヤーは1枚のカードを繰り返し配られ、チップから10ドルのバイイン料金/最小ベットが差し引かれます。 ディーラーが描く 2回目のパスが行われ、別のカードがすべてのプレイヤーに配られます。 ディーラーが描く 次に、(それらが配られたのと同じ順序で)各ボットは、「プログラマインタフェース」セクションで説明したように実行されなければならない行動を起こすか、立っています。ベットは動きと見なされます。ベットがボットのさらなる移動能力に影響しないことに注意してください。ベットしてからカードを引くことは非常に可能であり、複数のカードを引いて、立っている前にそれらをベットすることもできます。 すべてのボットが破壊または立ち上がると、ディーラーは17のしきい値までプレイします ボットのスコアはディーラーのスコアと比較され、ベットは勝ち負けになります ワンラウンド 5つのハンドを構成すると見なされます。ハンド間では、競技者のリストがソートされてプレーヤーが削除され、さらに処理されて、すべてのボットが同じ数のハンドをプレイするようにします(エントリ数が4つのボットテーブル間で均等に分割されないという事実の規定) )。 プログラマーのインターフェースと法的動き CardSharkファイルに記載されているとおり: # DOCUMENTATION # INPUT SPECIFICATION # …

30
オーストラリアのサッカーの試合の勝者を決定する
オーストラリアのフットボールでは、ゴールは6ポイントの価値があり、背後は1ポイントの価値があります。スコアには、目標と背後の数、および合計スコアが含まれる場合があります。2つの異なるチームの目標と背後の数を考慮して、ゲームに勝ったチームを決定します。 g1, b1, g2, b2入力として4つの整数を受け取り、入力された最初のチームまたは2番目のチームが勝ったかどうかについて2つの異なる値を出力します。入力形式は柔軟ですが、入力順序はどのチームが最初であるかを明確にする必要があります。たとえば、g1, g2, b1, b2許可されますが、許可されb1, g2, g1, b2ません。 テストケース テストケースはtrue、最初のチームの勝利とfalse2番目のチームの勝利に使用します。入力の形式はです(g1,b1),(g2,b2)。 (1,0),(0,1) true (2,0),(0,11) true (10,8),(11,1) true (0,0),(1,0) false (100,100),(117,0) false (7,7),(5,12) true (2,0),(0,13) false 例として、入力では(10,8),(11,1)、チーム1が10ゴールと8ビハインドで合計ポイント、チーム2がポイントを獲得したため、チーム1が勝利します。 。10∗6+8∗1=6810∗6+8∗1=6810*6+8*1=6811∗6+1∗1=6711∗6+1∗1=6711*6+1*1=67 入力はドローになりません-ドロー入力に対するプログラムの動作は重要ではありません。

2
誰がノナリーゲームから逃れることができますか?
Nonary Gameは、同じ名前のビデオゲーム3部作で行われる架空のゲームです。あなたの目標は、可能な限り数バイトのコードで、特定のゲームから何人のプレイヤーが脱出できるかを見つけることです。 ゲームのルール 1から9までの9人のプレイヤーがいます。 すべてのプレイヤーは同じ部屋で始まります。 任意の数のドアがあり、各ドアには1〜9の番号が付いています。ドア番号が重複または欠落している可能性があります。 ドアは部屋間の片道接続です。各ドアは一度しか使用できません。 3〜5人のプレイヤーのグループのみがドアを通過できます。 グループは、9を法とする数値の合計が9を法とするドアの数と一致する場合にのみドアを通過できます。 9ドアを通過したプレイヤーはすべて逃げます(勝ちます)。 例 ┌───┬───┬───┐ │ 6 4 9 │ < │ | | │ 3 5 9 └───┴───┴───┘ <開始点を表します。すべてのプレイヤーがそこから始まります。 この設定では、誰もが脱出できます。これを実現するにはさまざまな方法がありますが、そのうちの1つは [1、2、3、4、5]はドア6((1 + 2 + 3 + 4 + 5)%9 = 6)を通過し、[6、7、8、9]はドア3を通過します((6 + 7 + 8 + 9)%9 = 3)。全員が2番目の部屋で会います。 [1、2、3、7]はドア4を通り、[4、5、6、8、9]はドア5を通ります。 [1、2、3、4、8]は9つのドアの1つを通り、[5、6、7、9]はもう1つのドアを通ります。 ┌───┬───┐ …
12 code-golf  game 

5
1つから2つを取得
この質問で見たように、複雑な論理ステートメントは、一般化された掃海艇の単純な接続詞で表現できます。ただし、一般的な掃海艇にはまだ冗長性があります。 これらの冗長性を回避するために、「Generalized-1 Minesweeper」という新しいゲームを定義します。 Generalized-1 Minesweeperは、任意のグラフで実行されるバージョンの掃海艇です。グラフには、「インジケータ」または「値」という2種類の頂点があります。値はオンまたはオフ(地雷または不発地)のいずれかになりますが、その状態はプレイヤーに知られていません。インジケータは、隣接するセルの1つが正確にオンであることを示します(鉱山)。インジケーターは地雷としてはカウントされません。 たとえば、一般的なマインスイーパの次の掲示板では、セルAとBが両方とも地雷であるか、どちらも地雷ではないことがわかります。 (図ではインジケーターは灰色でマークされ、値は白です) オフになっている値をクリックしてインジケーターを表示する通常の掃海艇とは異なり、一般化された掃海艇にはそのようなメカニズムはありません。プレーヤーは、グラフのどの状態でインジケータを満たすことができるかを単純に決定します。 あなたの目標は2、Generalized-1 Minesweeper を作ることです。Generalized-1 Minesweeperで構造を構築し、8つの特定のセルに対して、値のすべての可能な構成でちょうど 2つのセルがオンになるようにします。これ2は、従来の掃海艇と同じように動作することを意味します。ソリューションを作成するとき、値セルに特定の値を念頭に置いてはいけません。(H.PWizの質問への回答では、一部の値セルが状態から推定できる場合があります) 得点 回答は、最終グラフの頂点の数から8(8入力の場合)を引いたものでスコア付けされ、スコアが低いほど優れています。このメトリックで2つの回答が同点の場合、タイブレーカーはエッジの数になります。

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