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

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

1
KoTH:五目並べ(5行連続)
Gomoku or Five in a lineは、黒と白の石を使ったグリッドで2人のプレイヤーがプレイするボードゲームです。石を(横、縦、または対角線)続けて配置できる人がゲームに勝利します。515×1515×1515 \times 15555 ルール このKoTHでは、Swap2ルールを再生します。つまり、ゲームは2つのフェーズで構成されます。最初のフェーズでは、2人のプレーヤーが誰が先に行くか、誰が黒をプレーするかを決定し、その後、プレーヤーから始めて各ラウンドに1つの石を置きます。黒を選んだ人。 初期段階 プレーヤーをA&Bにして、Aがゲームを開くようにします。 Aはボード上に2つの黒と1つの白い石を配置します Bは、次の3つの移動のいずれかを選択できます。 プレーヤーBが黒を再生することを決定:初期フェーズが終了しました プレーヤーBが白い石を置くことに決め、白を再生する:初期フェーズが終了しました プレーヤーBが1つの黒と1つの白の石を再生することを決定:Aが色を選択する ゲームフェーズ 各プレーヤーは、黒をプレイするプレーヤーから始めて、自分の色の石を1つボード上に置きます。これは、プレイする空きスペースがなくなるまで続きます(この場合はタイです)、または1人のプレーヤーがなんとかして石をプレイします行(その場合、そのプレイヤーが勝ちます)。555 行は、水平、垂直、または対角線を意味します。勝利は勝利です。プレーヤーが複数の行を獲得できたかどうかは関係ありません。 KoTHゲームのルール 各プレイヤーは他のプレイヤーと2回対戦します: 最初はだれが最初に行くかはランダムに決定されます 次のゲームでは、最後にプレイしなければならないプレイヤーが最初になります 勝利は2ポイント、同点1、負け0 目標は、できるだけ多くのポイントを獲得することです あなたのボット 可能な限り多くの言語でこの課題にアクセスできるようにするために、入出力はstdin / stdout(行ベース)を介して行われます。ジャッジプログラムは、ボットのstdinに 1行を出力することによってプログラムにプロンプ​​トを表示し、ボットは1行をstdoutに出力します。 EXITメッセージを受信すると、裁判官がプロセスを強制終了する前に、ファイルへの書き込みを完了するための0.5秒が与えられます。 ランダム性 トーナメントを検証可能にするために、裁判官はシードされたランダム化を使用し、ボットも同じ理由でそうする必要があります。ボットには、使用するコマンドライン引数を介してシードが与えられます。次のセクションを参照してください。 議論 ボットは2つのコマンドライン引数を受け取ります。 対戦相手の名前 ランダム性の種 ユーザーの状態 プログラムはゲームごとに常に新しく開始されるため、ファイルを使用して、保持したい情報を保持する必要があります。現在のディレクトリにあるすべてのファイルの読み取り/書き込み、またはサブフォルダーの作成/削除を行うことができます。親ディレクトリ内のファイルへのアクセスは許可されていません! 入出力フォーマット BOARD現在の石のリストを表すであろう、それだけ石が置かれる位置を示し、各エントリの形式であろうと範囲内の整数であろうとのいずれかであろう(黒)または(白い)。((X,Y),COLOR)XY[0,15)[0,15)[0,15)COLOR"B""W" さらにSP、単一のスペース、それぞれがの範囲にある2つの整数のXYタプル(X,Y)を示し、選択肢を示します。[0,15)[0,15)[0,15)| 初期段階では、3種類のメッセージがあります。 Prompt (judge) -> Answer (bot) "A" …

3
完全カバーパズル
チャレンジ グループ化された文字のセットが与えられたら、それらをボード全体に配置して、領域全体を覆うようにします。 ボード表現(別名SHIP DECK) ボードは6x6グリッドです。 常に36の正方形があります。 列はAFとマークされています。 行には1〜6のマークが付けられています。 例: A B C D E F +---+---+---+---+---+---+ 1 : : : : : : : +---+---+---+---+---+---+ 2 : : : : : : : +---+---+---+---+---+---+ 3 : : : : : : : +---+---+---+---+---+---+ 4 : : : : : : …

2
4x4 Hexの完璧なゲームをプレイする
バックグラウンド 六角はK×K六角形のタイルの菱形でプレイされる2プレーヤーの抽象戦略ゲームです。菱形の反対側の2つの側面は白く色付けされ、他の2つは黒く、2人のプレーヤー(黒と白)は交互に色のトークンを空いているタイルに配置します。最初に自分の色の反対側の間にパスを構築することに成功したプレーヤーが勝者です。ゲームは引き分けで終了することはできず、最初のプレイヤーはボードのサイズに関係なく勝利戦略を持っていることが知られています(詳細はWikipediaのページを参照してください)。 タスク この課題では、ボードサイズをに固定し、ボードをK = 4次のグリッドとして表します。太い線は隣接するタイルを示します。 あなたの仕事は、最初のプレーヤーのための勝利戦略を作成することです。あなたは黒か白のどちらかを選ぶことができます。これは、相手のプレーヤーがどのような合法的な動きをしても、あなたのプレーは勝利をもたらさなければならないことを意味します。入力はゲームの位置(ボード上のトークンの配置)であり、出力は以下に指定された形式での合法的な動きです。勝者戦略を自分で見つけたい場合は、このネタバレを読まないでください。 白が最初であると仮定して、1つの可能な勝利戦略の概要。 最初に5を選択します。その後、5から一番下の行へのパスがある場合、または黒が任意の時点で0または1を選択している場合、空いている0または1のいずれかを選択して応答します。黒が9または13を選択する場合、10を選択してから、14または15のいずれかが空くようにします。黒が9、13、または14を選択しない場合、9を選択し、次に13または14のいずれかが空いていることを選択します。黒が14を選択した場合は、15を選択して応答します。次に、空の場合は10を選択します。黒が10を選択した場合は11で応答します。黒が6を選択した場合は7で応答し、次に空いている2または3のいずれかを応答します。黒で6が選択されていない場合は選択して、5から最下行までのパスを作成します。 入出力 入力は16文字の文字列でWBE、白、黒、空を表します。上に列挙したように、それらはボードのタイルを表しています。以下から入力方法(出力方法も決定します)を選択できます。 STDINからの入力、STDOUTへの出力。 1つのコマンドライン引数として入力し、STDOUTに出力します。 16文字の1文字のコマンドライン引数として入力し、STDOUTに出力します。 名前付き関数の引数として入力し、戻り値として出力します。 次のトークンが移動する番なので、出力は次のトークンを配置するタイルを表します。次の出力形式から選択できます。 ゼロベースのインデックス(上の画像で使用されているもの)。 1から始まるインデックス。 プレーヤー用に選択した、またはユーザーが選択した文字列にE置き換えられた入力文字列。WB ルール あなたの戦略は決定論的でなければなりません。戦略を使用して空のボードから到達できないゲームの位置、またはいずれかのプレイヤーがすでに勝っている位置を正しく処理する必要はなく、クラッシュする可能性があります。逆に、あなたの戦略を使用して到達可能なボードでは、合法的な動きを返さなければなりません。 これはコードゴルフなので、最小バイト数が優先されます。標準の抜け穴は許可されていません。 テスト中 手作業で行うのは非常に面倒なので、エントリを検証するためのPython 3コントローラを作成しました。あなたはここでそれを見つけることができます。最初の3つの入力形式とPython 3関数(他の言語の関数はプログラムにラップする必要があります)、3つの出力形式すべて、および両方のプレーヤーをサポートしています。戦略が勝っていない場合は、見つかった敗北ゲームを出力するので、プログラムを微調整できます。

4
秩序とカオスとコードゴルフ
Order and Chaosは、6x6ボードでプレイされるTic-Tac-Toeのバリアントです。ただし、このゲームのユニークな点は、両方のプレイヤーがXまたはOを配置できることです。プレイヤーは(順番で始まる)ターンごとに、占有されていないマスにXまたはOを配置します。 勝つことは簡単です。ボード上に5つのXまたはO(垂直、水平、または斜め)が並んでいる場合、勝ちとなります。ボードがいっぱいで、ボードに5個のXまたはOのストリングがない場合、カオスが勝ちます。あなたの仕事?さて、これはプログラミングパズルとコードゴルフなので、ゲームをプログラミングしてゴルフします。 ルール として入力を受け入れる必要がありますx y t。xとyは座標であり、tはタイルタイプ(XまたはO)です。座標0 0は左上隅から始まり、5 5右下隅まで増加します。 ユーザーが無効な座標、タイル、の形式ではない入力を入力した場合、または既に存在する場所にタイルを配置しようとした場合は、q終了して印刷することを受け入れる必要があります。(唯一の例外は、これによりプログラムが終了するためです。)INVALIDx y tq 注文が勝った場合は、が出力されますP1 WINS。カオスが勝利した場合、出力されますP2 WINS。 最初に注文する必要があります。 空白スペースはで表され.ます。 タイルはXand O(大文字)です。小文字を受け入れる必要はありませんが、大文字は必須です。 ボードはのみで構成されている必要があります.XO。 あなたは実際にゲームをプレイする両方のプレイヤーをシミュレートしており、ボードは与えられず、誰が勝ったかを確認しています。1つのプレイヤーが勝つまで、入力として動きを受け入れ、次にボードを印刷し、別の動きを受け入れます。 スターティングボードは次のようになります。 ...... ...... ...... ...... ...... ...... そして、最初のプレイヤー(Order)が入力した後、次の1 2 Xようになります。 ...... ...... .X.... ...... ...... ...... 同様に、次のプレイヤー(カオス)がを入力すると、次の3 3 Oようになります。 ...... ...... .X.... ...O.. ...... ...... そして、これは一人のプレイヤーが勝つまで続きます。 いつものように、すべての面白さを取り除く標準の抜け穴は禁止されています。 勝者は、6月15日00:00 …

5
アラクの最短のゲームを書く
Alakは数学者AK Dewdneyによって発明され、1984年の本Planiverseに記載されています。アラクのルールは簡単です: Alakは、11スロットの1次元ボードでプレイする2人用のゲームです。各スロットは一度に最大で1つの部品を保持できます。「x」と「o」の2種類のピースがあります。xは1つのプレーヤーに属し、oはもう1つのプレーヤーに属します。ボードの初期構成は次のとおりです。 xxxx___oooo プレイヤーは順番に移動します。各ターンで、各プレイヤーは一度に1つの駒のみを移動できます。プレーヤーは自分のターンに追い越すことはできません。プレーヤーは自分の駒のいずれか1つを次の空いているスロットの右または左に移動できます。これには、空いているスロットを飛び越える必要がある場合があります。プレーヤーは、駒をボードの側面から移動することはできません。 移動によって、対戦相手の駒が両側に2つの駒の可動子の色で囲まれているパターンが作成された場合(空いている空白のスロットが介在しない)、それらの囲まれた駒はボードから削除されます。 ゲームの目的は、対戦相手の駒をすべて取り除くことです。この時点でゲームは終了します。all-but-oneを削除すると、ゲームも終了します。これは、対戦相手が1つの駒であなたを囲むことができないため、とにかく数回の移動で常に負けるからです。 私はこのゲームをオンラインで見つけ、疑問に思っていました:ゴルフはできますか? ゴルフのルール コードは、ゲーム内のすべてのルール、キャプチャの処理、適切な移動などに従う必要があります(ボットを追加する必要はありませんが、両方のプレイヤーを何らかの方法で制御し、一方のプレイヤーを人間にする必要があります)。 入力は、タイルXのタイルをYに移動するか、終了する必要があります。たとえば、1 4「この作品をタイル1からタイル4に移動」と言うことができます。- をquit使用しても、プログラムは終了します。また、移動が無効であるかどうかを確認する必要があります(ボードの外に出るか、空いているスペースを横切ってタイルのペアでないメッセージを送信または送信する必要がある場所に移動するか、)。ControlCquit 優勝選手と無効なため出力がでなければならないP1 WINS、P2 WINSとINVALIDそれぞれ。(これらはすべて7文字です。) 出力はボードを示す必要があります。それだけで十分です。 番号付きのタイルやその他のピースなどの補助具を使用するかどうかは関係ありません。 チャレンジは次の場合に終了します。 1つの回答で50票を獲得 3週間、1つの回答が上位投票されたままになり、その期間に他の回答は投稿されませんでした チャレンジには少なくとも3つの答えがあります(そのため、実際の競争があります)。 ゲームのルール 左側のプレーヤーが最初にスタートする必要があります。 一度に正方形を占めるのは1個だけです。それが空いているスペースにぶつかるまで、ピースを左または右に移動します。ボードは折り返されず、占有されていない領域を移動することはできません。例えば: xoo__o。ここで、x移動権はボードをに変更し_oox_oます。 xxooo_。ここで、左端xはyield _xoooxに移動し、os をキャプチャしてを残し_x___xます。 x__oox。ここでは、osはキャプチャされていません(まだギャップがあります)。空いているスペースを移動できないため、キャプチャはできません。x間には他の部分(残しがないので、左側のは、1つのスペースを移動することができます_x_oox)。 グループが対戦相手の駒に囲まれている場合、複数の隣接する駒を一度にキャプチャできます。例えばx_ooxには_xoox、両方のキャプチャしますo秒とにつながります_x__x。 移動後の場合は、最初に相手の駒をキャプチャしてから、自分の駒を削除する必要があるかどうかを確認します。2つの例を見てみましょう。 o_oxxにoxox_。1つ目oは2つ目がキャプチャされるox_x_ため、1 つ目はxボードに残ります。 o_ooxにoxoo_。今回は、osはキャプチャされないため、x代わりにがキャプチャされます。 ピースが1つしかない場合は、1つではキャプチャできないため、ゲームは終了します。 ゲームを始めよう!あなたが思いつくものを見るのを楽しみにしています。

4
Winnable Solitaire Mancalaボード
マンカラは、通常、プレーヤーが操作するビーズで満たされた一連のカップを含むボードゲームのファミリーの名前です。このチャレンジでは、ゲームのソリティアバリアントに特定のルールセットを使用します。 ボードは、1つの端にある「バスケット」と、それに続く1から始まる無数のカップで構成されています。一部のカップには、いくつかのビーズが含まれています。場合n番目のカップを正確に持っているnことでビーズを、あなたはそれからビーズ「種をまく」ことがあります。播種とは、すべてのnビーズをカップから取り出し、各カップに1つずつバスケットに向かって堆積させることを意味します。最後のビーズがバスケットに入ります。ボード上のすべてのビーズがバスケットに入ったときにプレーヤーが勝利します。 明らかに、2番目のカップにビードが1つしかない場合など、勝てないボードがたくさんあります。ビーズが0個のカップはすべて播種できず、2番目のカップには播種するのに十分なビーズがないため、合法的なプレーはありません。これは明らかに面白くないので、あなたの仕事は勝てるボードを作ることです。 仕事 ビーズの数を表す正の整数が出力されると、上記のように勝てるボードを作るために各カップに入れる必要のあるビーズの数を表す非負の整数のリストが出力されます。このリストには、末尾にゼロを含めないでください。 任意の数のビーズに対して、常に1つの勝利可能なボード構成があります。 デモンストレーション これは、4の入力と勝者のボードをプレイする方法のデモです[0, 1, 3]。勝者のボードはです。利用可能な唯一の動きから始めて、3番目のカップからビーズを播種します[1, 2, 0]。今、私たちは実際に選択肢を持っていますが、唯一正しいのは最初のカップを播種して、を取得することです[0, 2, 0]。次に、2番目のカップを降伏させ[1, 0, 0]、最後に最初のカップを再び播種して、すべての空のカップを取得します。 テストケース: 1 => [1] 2 => [0, 2] 3 => [1, 2] 4 => [0, 1, 3] 5 => [1, 1, 3] 6 => [0, 0, 2, 4] 7 => [1, 0, 2, 4] …

2
クアルトにはいくつの抽選がありますか?
前書き この課題は、Project Eulerの問題に似ています。私はそれを思いついたのは、私が一見シンプルなボードゲームをプレイしていて、そのメカニズムに関する簡単な質問に答えるための効率的なソリューションを考え出せなかったからです。 Quartoは、4つの連続した楽しい変種です。これは、16個のユニークなピースを含む4 x 4のボードで再生されます(ピースは複製されません)。毎ターン、各プレイヤーはボードに1個の駒を置きます。各ピースには4つのバイナリ特性があります(ショート/トール、ブラック/ホワイト、スクエア/サーキュラー、ホロー/ソリッド)。目標は、4つの特性のいずれかについて、水平、垂直、または2つの対角線に沿って4つを連続して作成することです。つまり、4つの黒い部分、4つの白い部分、4つの高い部分、4つの短い部分、4つの正方形の部分、4つの円形の部分、4つの中空の部分、または4つの中実の部分です。 上の画像は完成したゲームを示しています。4つの正方形の駒があるため、4つ並んでいます。 チャレンジ クアルトでは、いくつかのゲームは引き分けに終わるかもしれません。 可能な終了位置の総数は16!、約20兆です。 それらの最終ポジションのいくつがドローですか? ルール ソリューションは、ドローであるエンドポジションの総数を計算して出力するプログラムでなければなりません。正解は414298141056 手動で推定されたゲームのルールの情報のみを使用できます(コンピューター支援の証拠はありません)。 問題の数学的簡略化は許可されますが、ソリューションで説明し、(手動で)証明する必要があります。 勝者は、CPU実行時間の点で最も最適なソリューションを持つものです。 勝者を決定するために、16 GB RAMを搭載したMacBook Pro 2,5 GHz Intel Core i7で、30m未満の報告された実行時間ですべてのソリューションを実行します。 他のボードサイズでも機能するソリューションを考え出すことのボーナスポイントはありません。それがいいのに。 該当する場合、プログラムは上記のハードウェアで1分以内にコンパイルする必要があります(コンパイラの最適化の乱用を避けるため)。 デフォルトの抜け穴は許可されていません 提出物 投稿してください: コードまたはコードへのgithub / bitbucketリンク。 コードの出力。 ローカルで測定された実行時間 あなたのアプローチの説明。 締め切り 提出期限は3月1日ですので、まだ十分な時間があります。

7
pseudoprimesをゴルフしましょう!
はじめに/背景 で、最近の議論で暗号チャット私は議論するために/のヘルプ挑戦されたフェルマー素数判定テストとカーマイケル数を。このテストは、a^(p-1) mod p==1常に素数に当てはまるがp、常にコンポジットには当てはまらないという前提に基づいています。カーマイケル番号は、基本的にはフェルマートのテストで最悪の敵です。取得するために同時に素数にならないように選択aする必要がある番号です。が共素数でない場合、本質的には、自明ではない因子を見つけましたpa^(p-1) mod p!=1apそして、誰もが知っているように、因数分解は非常に難しい場合があります。特に、すべての要素が十分に大きい場合。これで、Fermatテストが実際にはあまり使用されない理由がよくわかります(より優れたアルゴリズムがあります)。これは、(セキュリティの観点から)防御者としてのあなたが同じような量の作業を行わなければならない数があるためです。攻撃者(つまり、数を因数分解します)。 これらの数値が魅力的である理由がわかったので、可能な限り最短の方法で数値を生成します。必要に応じて、生成したコードを記憶することができます。 カーマイケル番号は、OEISではA002997としても知られています。関連する課題はすでに ありますが、サイズではなく速度が最適化されているため、ここからのエントリは競争力がありません。同じ議論が逆の方向にも当てはまり、ここのエントリはサイズを優先して速度とトレードオフをする可能性があります。 仕様 入力 これは標準のシーケンスチャレンジなので、正または負でない整数nを入力として使用します。n必要に応じて、0または1のインデックスを付けることができます(指定してください)。 出力 出力は、必要にn応じて、-番目のカーマイケル番号または最初のnカーマイケル番号のいずれかになります(指示してください)。 仕様 整数xは、xが複合である場合にのみカーマイケル数であり、のすべての整数yについてgcd(x,y)=1、それを保持しy^(x-1) mod x==1ます。 誰が勝ちますか? これはcode-golfなので、バイトで最短のコードが優先されます!標準のIOと抜け穴のルールが適用されます。 テストケース 最初のいくつかのカーマイケル番号は次のとおりです。 561,1105,1729,2465,2821,6601,8911,10585,15841, 29341,41041,46657,52633,62745,63973,75361,101101, 115921,126217,162401,172081,188461,252601,278545, 294409,314821,334153,340561,399001,410041,449065, 488881,512461
9 code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

13
比較チェーンを拡張
ほとんどの言語と異なり、Python a<b<cは数学で行われるように評価し、ブール値a<bをと比較するのではなく、実際には3つの数値を比較しcます。これをC(および他の多くの)で記述する正しい方法は、a<b && b<c。 この課題の課題は、このような任意の長さの比較チェーンをPython /直感的な表現から他の言語でどのように記述するかまで拡張することです。 仕様書 プログラムは演算子を処理する必要があります。 ==, !=, <, >, <=, >=。 入力には、整数のみを使用した比較チェーンがあります。 途中の比較の真実性について心配する必要はありません。これは、純粋に構文解析/構文上の課題です。 入力には、スペースで分割することで解析を簡単にする回答を防ぐための空白はありません。 ただし、出力には、&&' のみ、または比較演算子と&&'の両方のいずれか、または両方を囲む単一のスペースがある場合がありますが、一貫性があります。 テストケース Input Output --------------------------------------------------------------- 3<4<5 3<4 && 4<5 3<4<5<6<7<8<9 3<4 && 4<5 && 5<6 && 6<7 && 7<8 && 8<9 3<5==6<19 3<5 && 5==6 && 6<19 10>=5<7!=20 10>=5 && 5<7 && …
9 code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

30
int入力nを指定して、n * reversed(n)を出力します
整数nを指定して出力n * reversed(n) reversed(n)は、reverseの桁を取得したときに取得する数値ですn。 reverse(512) = 215 reverse(1) = 1 reverse(101) = 101 >>>>>>>> func(5) = 5*5 = 25 func(12) = 12*21 = 252 func(11) = 11*11 = 121 func(659) = 659*956 = 630004 最短のコードが勝ちます! リーダーボード コードスニペットを表示 var QUESTION_ID=144816,OVERRIDE_USER=71625;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var …
9 code-golf  math  arithmetic  code-golf  math  integer  code-golf  arithmetic  integer  code-golf  sequence  base-conversion  palindrome  code-golf  math  primes  integer  code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

2
1000の最も一般的な単語
この質問は、「物事の説明者」が楽しく読めるから書いてありました。 文字、数字、およびこのようなもののセットを読み取り/受け取り、すべての単語がこのセットの一部である場合に"#%|?戻る「コンピュータに物事を実行させるもの」を記述します。True / 1 すべての単語がそのセットの一部ではない場合、そのセットの一部ではなかった単語を返します。 このウェブサイトは、すべての場合において正しいと見なすことができます。ルールはそのサイトの仕様に従うように書かれています。 例: Truthy: 最初の水平線より上のテキスト全体が入力として貼り付けられている場合、コードは真の値を返す必要があります。 次の行は真の値を返します(入力はで区切られています###) This returns "Hello, World!" ### tHiS rEtUrNs TrUe... ### Thing Explainer is a book written by a man. The man writes books with simple words. ### This set of stuff "#!^{>7( must return true 偽り: 次の例では、入力と出力はで区切られてい***ます。異なるテストケースはで区切られ###ます。 This code doesn't return …
9 code-golf  string  parsing  code-golf  array-manipulation  random  permutations  code-golf  string  code-golf  parsing  code-golf  string  quine  code-golf  string  parsing  comment  code-golf  string  counting  natural-language  code-golf  string  decision-problem  code-golf  math  code-challenge  metagolf  test-battery  code-golf  string  code-golf  math  number  arithmetic  source-layout  code-golf  number  primes  decision-problem  code-golf  math  arithmetic  code-golf  date  code-golf  string  cryptography  code-golf  code-golf  chess  board-game  code-golf  geometry  grid  puzzle-solver  set-partitions  code-golf  number  natural-language  code-golf  ascii-art  code-golf  math  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  string  natural-language  code-golf  game  board-game  tic-tac-toe  code-golf  ascii-art  hexagonal-grid  code-golf  string  comment  code-golf  internet  code-golf  sorting  code-golf  kolmogorov-complexity  unicode  code-golf  tips  code-golf  string  natural-language  code-golf  string  kolmogorov-complexity  source-layout  hello-world  code-golf  string  kolmogorov-complexity  counting  natural-language  code-golf  random  quine  code-golf  string  math  bitwise  code-golf  permutations  code-golf  string  code-golf  arithmetic 

1
大砲はどこに行くことができますか?
前書き 中国のチェスとも呼ばれるxiangqiのゲームは、中国、ベトナム、台湾、その他の東アジア諸国で人気のあるチェスのようなゲームです。xiangqiの両側の色は赤と黒です。シャンチーには、将軍(G)、顧問(A)、象(E)、馬(H)、戦車(R)、大砲(C)、兵士(S)の7つのピースがあります。この課題では、大文字の部分は赤、小文字の部分は黒と見なされます。これらの駒のほとんどは、西洋のチェスとほぼ同等ですが、完全にユニークな駒が1つあります。それは大砲です。 大砲のチェスでルークまたはシャンチーで戦車(xまたはY軸上の任意の数のスペースを移動させる)ような動きが、この方法を攻撃できません。代わりに、X軸またはY軸に沿って(移動と同じように)任意の色(フレンドまたは敵)の1つの部分をジャンプして攻撃し、反対の色の部分に着陸してキャプチャします。すべてのチェスとxiangqiの駒と同様に、大砲は自分の色の駒をキャプチャできません。 たとえば、次の図では、大砲(C)が移動できるスペースはでマークされ*、ジャンプしてキャプチャできるスペースはでマークされてXいます。 ....X.... ......... ......... ....h.... ....*.... ****C**aX ....E.... ....X.... ....g.... ....R.... チャレンジ xiangqiボードとそのボード上の大砲の座標を入力として与えられ、大砲が移動またはジャンプできる座標のリストを出力するプログラムまたは関数を記述します。 すべてのI / Oの形式は柔軟です。 xiangqiボードで使用できる形式には、改行で区切られた文字列、文字列のリスト、またはにないその他の区切り文字を含む文字列が含まれaceghrsACEGHRS.ます。ボードは常にxiangqiボードのサイズである9x10であると想定できます。 ボード自体の内容は、ボード.上の空のポイントを表すいくつかのピリオド()と、ピースを表す文字で構成されます。ピースから文字へのマッピングは次のとおりです。 A -> advisor C -> cannon E -> elephant G -> general H -> horse R -> chariot S -> soldier 大文字は赤い部分を表し、小文字は黒い部分を表します。ここにリストされていない(つまりにないaceghrsACEGHRS.)文字はボードに表示されません。 入力座標の形式は柔軟で、出力座標の形式と一致する必要はありません。たとえば、2つの整数要素、2つのタプル、任意の区切り記号付きの2つの数値、または2つの文字のリストにすることができます。また、0インデックスまたは1インデックスのいずれかになります。ボード上の座標は常に大砲(Cまたはc)に解決されると想定できます。 大砲がジャンプして移動できる座標は、出力の同じリストに表示される必要があります。2つの間の区別は必要ありません。個々の出力座標に使用できるフォーマットは、入力座標のフォーマットと同じです。座標は、改行で区切られたり、リストとして出力されたり、その他の表現になります。特定の順序は必要ありません。順序は決定論的である必要さえありません。 大砲の同じ色(ケース)へのジャンプは無効であり、出力に表示されないことに注意してください。 テストケース すべてのテストケースがxiangqiの可能性があるわけではないことに注意してください。 Input board …

1
三目並べとチェス、[明確な]文字が最も少ない
このTic-Tac-Checゲームの形式では、チェスの駒を動かして4つ並べることが目標です。ここでの目標は、ポジションに勝利の動きがあるかどうかを把握することです。 ルール ルールはTic-Tac-Checのルールと似ていますが、同一ではありません。 ボードは4 x 4の正方形です。各プレーヤーには、ルーク、ビショップ、ナイト、クイーンがいます。あなたの番では、2つのオプションがあります。標準のチェスのルールに従って、ボード上にある自分の駒の1つを移動できます。または、ボード上にないピースを空いている場所に置くこともできます。 既存の駒を対戦相手の駒に移動すると、その駒はボードから取り除かれ、それらに戻されます。ただし、相手の駒の上に新しい駒を置くことはできません。 1人のプレーヤーがすべての駒を一列(または列、または対角線)に配置すると、すぐに勝利します。 チャレンジ STDINからボードを受け入れ、次のターンに白のプレイヤーが勝てるかどうかを出力する完全なプログラムを記述します。 入力 それぞれ4文字の4つのストリング。各キャラクターはスペースまたはチェスの駒です。ルーク、ビショップ、ナイト、クイーンのみが使用され、それぞれ1つ(色ごと)が表示されます。どちらのプレーヤーもすでに4列に並んでいます。 入力として、チェスの駒または文字のUnicode記号を受け入れるかどうかを選択できます。文字を選択すると、RBKQは白い部分をrbkq表し、黒い部分を表します。 出力 白いプレイヤーが次のターンに勝てる場合、出力trueまたは1。それ以外の場合は、falseまたはを出力します0。 プログラム 数字Xを選択してください。プログラムには最大X個の異なる文字を含めることができ、X回を超えて出現する文字はありません。 勝利 最も低いXが勝ちます。引き分けの場合、最も少ないキャラクターが勝ちます。 例 これらの例は、入力が文字を使用して断片を表すことを前提としています。 rkb RB Q true - the white player can place the knight to complete the bottom row. ----------------------------------- rk RBbQ false - the black bishop prevents the white knight …

3
Partially-Observable Connect-4
ゲーム Connect-4の(ほぼ)標準的なゲームをプレイします。残念ながら、それは通信ゲームであり、誰かが下から順に2行ごとに黒いテープを貼ったため、これらの行内での対戦相手の動きを見ることができません。 すでに満杯の列内での移動は、あなたのターンを通過したものとしてカウントされ、ゲームが6 * 7ターンよりも長く続く場合、それはドローとして裁定されます。 チャレンジ仕様 プログラムはPython 3関数として実装する必要があります。最初の引数はボードの「ビュー」であり、既知のボードの状態を下から上への2D行リストとして表します。1最初のプレーヤー2による移動、2番目のプレーヤーによる移動0、空の位置または非表示です。対戦相手に移動します。 2番目の引数は、からインデックスが付けられたターン番号0であり、そのパリティにより、どのプレイヤーかがわかります。 最後の引数は任意の状態であり、None各ゲームの開始時に初期化され、ターン間で状態を保持するために使用できます。 再生したいカラムインデックスの2タプルを返す必要があり、新しい状態は次のターンで返されます。 得点 勝利は+1、引き分けは0、損失はとしてカウントされ-1ます。あなたの目標は、ラウンドロビントーナメントで最高の平均スコアを達成することです。私は明確な勝者を特定するために必要なだけの試合を実行しようとします。 ルール 競合他社は一度に最大1つの競合するボットを持つ必要がありますが、改善を加えた場合はエントリを更新しても問題ありません。ボットを1ターンあたりの思考時間を最大1秒に制限してみてください。 テスト中 以下は、コントローラーのソースコードと、参照用のいくつかの競合しないボットの例です。 import itertools import random def get_strides(board, i, j): yield ((i, k) for k in range(j + 1, 7)) yield ((i, k) for k in range(j - 1, -1, -1)) yield ((k, j) for …

3
PHPゴルフのヒント:ファイルの読み書きとCLI
私はゴルフは最近、およびなどのファイルからデータを読み取るために使用されている技術のいくつかの課題PHPコードの数に参加しているfopen()とfread()か、file_get_contents()本当に私のコードchar型の数に打撃を与えます。特に、コマンドライン入力を読み込むために提供されるメソッド。 私の質問は、ファイルの内容を読み書きする最速の方法(最小キーストローク)と、プロンプトから行を読み込む最速の方法(最小キーストローク)は何ですか? (注:これはコードゴルフなので、外部ライブラリは使用できません。)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.