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

チェスは、チェッカーグリッド上で2人のプレイヤーとプレイする戦略ゲームです。このタグは、チェスまたはチェスのバリエーションに関連するチャレンジ用です。

2
チェスのダービー
チェスや解体ダービーよりも正反対の可能性があるもの。あなたは、今日まで、一方を楽しむ人はもう一方を楽しむことはないと思うでしょう。 ルール 開始位置は、標準のチェス盤です。 RNBQKBNR PPPPPPPP PPPPPPPP RNBQKBNR 普通のように見えますが、それがすべての最後の部分の競争であることがわかるまでは: ターンごとに、ボード上の各ピースは、ランダムに選択された有効な動きを1つ行います(標準の動きルールを使用)。ただし、ピースが移動する順序は、ターンごとにランダム化されます。 ピースは、たとえそれが同じ色であっても、王であっても、あらゆるピースをキャプチャできます。 ポーンはFORWARDと対角線をキャプチャできます。さらに、通常のように、その前に空きスペースがある場合、ポーンはその最初の動きで2つのスペースを移動できます(そのようにキャプチャすることもできます)。さらに、ポーンはaポーン。 勝者は最後の駒です。ただし、1000ターン後に複数のピースが残っている場合、残りのピースはすべて勝者です。 通行人、小切手、城などはありません 出力 ターンごとにターン番号と、ボードの外観を出力します。ピースが殺された後、ボードから削除されます。最初のターンの後、ボードは次のようになります。 1. K RBQ N BR NP P P PP P P R PP BPN PNP K R Q 1000回の移動後、ボードは次のようになります。 1000. Q K P N R R B N Q そしてゲームは終了します。 または、おそらく556ターン後にボードは次のようになります。 556。 R それでゲームはそこで終わります。 *このチャレンジで行われるすべてのランダム化が均一であることを確認してください(すべての可能性が等しく発生する可能性があります)。

7
騎士がチェスボードにとどまる確率は何ですか?
チェス盤のサイズと騎士の初期位置を考慮して、k移動後に騎士がチェス盤の内側になる確率を計算します。 注意: 騎士は、等しい確率で8つの可能なすべての動きをします。 騎士がチェス盤の外に出ると、内部に戻ることはできません。 入力 入力は次の形式のカンマ区切りです: l,k,x,y ここlで、チェス盤の長さと幅k、ナイトの移動数、ナイトxの初期位置のx位置、ナイトの初期位置のyy位置です。0,0は、ボードの左下隅であり、ボードのl-1,l-1右上隅であることに注意してください。 アルゴリズム: ナイトの初期座標から始めます。この位置で可能なすべての動きを行い、これらの動きに確率を掛けます。各動きが関数を再帰的に呼び出すと、終了条件が満たされるまでこのプロセスを続けます。終了条件は、ナイトがチェス盤の外にある場合、この場合は0を返すか、必要な移動数が使い果たされた場合、この場合は1を返します。 再帰の現在の状態は、現在の座標とこれまでに実行されたステップ数にのみ依存していることがわかります。したがって、この情報を表形式で記憶できます。 クレジット このチャレンジはもともと、CC BY-NC-ND 2.5 INライセンスの下で公開されたcrazyforcode.comのブログ投稿からのものです。少し変更して、少し難しくしました。
16 code-golf  chess 

3
キング+ルークvsキング
それは別のよくプレイされるチェスゲームの終わりです。あなたは白人プレイヤーであり、まだルークとあなたの王がいます。対戦相手のキングは残っています。 あなたは白人なので、あなたの番です。このチェスの試合をプレイするプログラムを作成します。その出力は、一連の動き、gifアニメーション、ASCIIアートなど、何でもかまいません。 当たり前のように思えますが、明示的に述べます。ゲームに勝つ必要があります(限られた数の動きで)。このポジションから勝つことは常に可能です。そのルークを失うことはありません。遅らせないでください。 プログラムは、開始位置と各黒の動きに対して人間の入力を受け入れる場合と受け入れない場合があります(これは正当な位置、つまりキングが互いに触れていないことを安全に想定できます)。そうでない場合、黒王のランダムな開始位置とランダムな動きで十分です。 スコア スコアは、コードのバイト単位の長さ+ボーナスになります。すべての言語が許可され、最低スコアが勝ちます。 ボーナス プログラムで人間が定義した開始位置とランダムな位置の両方を許可する場合は-50。人間は標準入力、ファイル、GUIから入力できます... プログラムで人間とランダムの両方のプレイヤーが黒王を動かすことができる場合は-100 外部チェスソルバーまたは組み込みのチェスライブラリに依存している場合は+12345 幸運を! 更新! 追加ルール:試合はチェックメイトまでプレイする必要があります。黒は辞任せず、チェス盤の外に飛び出さず、エイリアンに誘getされません。 ヒント あなたは、おそらくから助けを得ることができ、この質問にchess.se。
16 code-golf  chess 

7
振動の平等
on [l, r]から始まる、時間単位ごとに1単位の速度で、2つの整数点間で振動するオブジェクトがあります。あなたが仮定することができます。たとえば、オブジェクトがで振動する場合、次のようになります。lt=0l < r[3, 6] t=0 -> 3 t=1 -> 4 t=2 -> 5 t=3 -> 6 t=4 -> 5 t=6 -> 4 t=7 -> 3 t=8 -> 4 しかし、オブジェクトは継続的に振動するため、ともt=0.5 -> 3.5ありt=3.7 -> 5.3ます。 、の間[l1, r1]で振動する2つのオブジェクトが与えられた[l2, r2]場合t、2つのオブジェクトが同じ位置を共有するような時間が存在するかどうかを判断します。l1, r1, l2, r2任意の便利な形式でテイクを作成し、真実/偽の値を出力します。 真実の入力: [[3, 6], [3, 6]] [[3, 6], [4, 8]] …
15 code-golf  array-manipulation  decision-problem  code-golf  math  number-theory  palindrome  integer-partitions  code-golf  math  decision-problem  geometry  code-golf  string  random  code-golf  ascii-art  code-golf  kolmogorov-complexity  primes  code-golf  kolmogorov-complexity  code-golf  graphical-output  code-golf  number-theory  primes  integer  factoring  code-golf  sequence  array-manipulation  integer  code-golf  array-manipulation  matrix  code-golf  sequence  binary  code-golf  game  cellular-automata  game-of-life  binary-matrix  code-golf  string  ascii-art  code-golf  random  generation  logic  code-golf  string  code-golf  code-golf  sequence  array-manipulation  random  apl  code-golf  code-golf  sequence  primes  code-golf  math  sequence  integer  code-golf  number  arithmetic  array-manipulation  decision-problem  code-golf  ascii-art  number  code-golf  restricted-source  quine  code-golf  chess  board-game  code-golf  math  sequence  code-golf  number  sequence  kolmogorov-complexity  code-golf  number  sequence  arithmetic  code-golf  math  number  alphabet  code-golf  ascii-art  classification  statistics  apl  code-golf  array-manipulation  matrix  code-golf  string  kolmogorov-complexity  code-golf  sequence  binary  base-conversion  binary-matrix  code-golf  string  classification  code-golf  tips  python  code-golf  combinatorics  binary  subsequence  restricted-time  code-golf  number  number-theory  code-golf  math  number  complex-numbers  code-golf  string  code-golf  string  code-golf  string  random  game  king-of-the-hill  python  code-golf  number  sequence  code-golf  number  sequence  code-golf  code-golf  math  number  array-manipulation  code-golf  array-manipulation  decision-problem  code-golf  string  code-golf  sequence  integer 

4
平和な共存軍
チェスのゲームには、同じ行、列、または対角線にある他のピースを攻撃する可能性のあるクイーンと呼ばれるピースがあります。チェスには通常、黒と白の2つの側面があり、各ピースはチームの1つに属します。ピースは同じチームに属するピースを攻撃することはできません。 あなたの目標は、正方形のボードのための最大の平和的共存軍を見つけることです。これは、2人の女王が互いに攻撃することはできず、黒の女王の数が白の女王の数に等しいように、ボードに収まることができる黒と白の女王の最大数です。 正方形のボードの辺の長さを入力として受け取り、そのボードに収まる最大の平和な共存軍のサイズの数を出力する必要があります。 これはコードゴルフなので、タグの標準ルールが適用されます。 OEIS A250000 これらのテストケースには、既知のすべての回答が含まれます。あなたのソリューションは、十分な計算能力と時間が与えられれば、あらゆる入力値に対してソリューションを計算できる一般化された答えでなければなりません。 1:0 2:0 3:1 4:2 5:4 6:5 7:7 8:9 9:12 10:14 11:17 12:21 13:24
15 code-golf  chess 

4
ナイトフィルグリッド
ナイトフィルは、ナイトチェスの駒の接続性を使用したフラッドフィルです。具体的には: 1 1 1 1 0 1 1 1 1 (0は初期点、1は接続されたセルを示します) チャレンジ スペースと壁の2Dグリッドと初期位置を指定して、グリッドでナイトフィルを実行します。最短のコードが優先されます。 ルール 入力を受け取り、任意の形式(イメージ、文字列、配列など)で出力を生成できます。入力グリッドの一部として、または別の座標として初期位置を取得できます。この説明のために、次の形式が使用されます。 ######## # = wall ######## x = initial location ## x ## ## ## ######## ## ## ######## ######## 出力は、ナイトフィルの結果が追加された入力グリッドのコピーです 塗りつぶしは、スペースや壁と同じ「色」であってはなりませんが、初期位置マーカーと同じにすることができます。たとえば、上の画像の場合、有効な出力は次のようになります。 ######## # = wall ######## @ = fill (could also have been x) ## …

1
チェス変換
チェスの世界で行われている非常に多くの仕事があります。たとえば、標準化されたファイル形式.pgnがあります。これは、移動リストを含むチェスゲームを記述しています。さらに、.fenボードの位置を説明する別のファイル形式があります。 今日の課題は、チェスの動きのリスト(代数表記)をボードの位置に変換することです。 定義 位置[a-h][1-8]:行(ファイル)と列(ランク)を追加することによって与えられます。ボード上の64の可能な位置の1つを定義します。 片[KQRBNP]?:表しKの ING、Qの ueen、R OOK、Bの iショップ、K Nの IGHT、Pの AWNを。代数表記でPは、使用されません。ボードで使用する場合、文字は白の場合は大文字、それ以外の場合は小文字です。 移動[KQRBN]?[a-h]?[1-8]?x?[a-h][1-8](=[KQRBN])?(+*?)?|O-O(-O):ピースの後に移動先の位置が続きます。 ピースがあいまいな場合は、行、列、またはその両方が示されます。 ピースがピースをキャプチャしている場合、ピースとx位置の間に配置されます。 移動がキャスリングの場合、O-Oキングサイドに与えられ、そうでない場合はに与えられますO-O-O。 ポーンがプロモートされている場合、移動にはプロモート=されているピースが追加されます。 移動によってキングがチェックされる場合、が追加されます+。 移動によって王がチェックメイトに置かれた場合、キングが追加され#ます。 ピースの色はターン番号によって決まります(黒から始まる白と黒の交互ターン)。 ボード(([1-8]|[KQRBNPkqrbnp])*\/){8}:行は、行の順序でピースをリストすることによって与えられます。空の四角がある場合、空の四角の各実行は、実行の長さを使用して与えられます。行は次を使用して区切られます/ ボードの初期位置はrnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNRであり、次を表します。 rnbqkbnr pppppppp PPPPPPPP RNBQKBNR Moveのリストを取得して、Boardを返す必要があります。入力が有効であると想定できます。 例 -> rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR e4 -> rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR e4,c5 -> rnbqkbnr/pp1ppppp/8/2p5/4P3/8/PPPP1PPP/RNBQKBNR e4,d5,exd5,e5 -> rnbqkbnr/ppp2ppp/8/3Pp3/8/8/PPPP1PPP/RNBQKBNR e4,d5,exd5,e5,dxe6 -> rnbqkbnr/ppp2ppp/4P3/8/8/8/PPPP1PPP/RNBQKBNR e4,d5,exd5,e5,dxe6,Bc5,Nf3,Nf6,d4,Nc6,dxc5,Ne5,h4,h5,Nh2,Neg4 -> r1bqk2r/ppp2pp1/4Pn2/2P4p/6nP/8/PPP2PPN/RNBQKB1R e4,d5,exd5,e5,dxe6,Bc5,Nf3,Nf6,d4,Nc6,dxc5,Ne5,h4,h5,Nh2,Neg4,g3,Nxf2,Qd4,N6g4 -> r1bqk2r/ppp2pp1/4P3/2P4p/3Q2nP/6P1/PPP2n1N/RNB1KB1R e4,d5,exd5,e5,dxe6,Bc5,Nf3,Nf6,d4,Nc6,dxc5,Ne5,h4,h5,Nh2,Neg4,g3,Nxf2,Qd4,N6g4,Bf4,O-O -> …
15 code-golf  chess 

3
スタックベースの言語をトークン化する
私は、に取り組んできた別のと呼ばれるスタックベースのゴルフの言語Stackgoat。この課題では、Stackgoat(または実際には一般的なスタックベースの言語)のTokenizerを作成します。 例 "PPCG"23+ ["PPCG", '23', '+'] 'a "bc" + ['"a"', '"bc"', '+'] 12 34+-"abc\"de'fg\\" ['12', '34', '+', '-', '"abc\"de'fg\\"'] "foo ['"foo"'] (empty input) [] ' "" ['" "', '""'] 仕様 処理する必要がある3つのタイプは次のとおりです。 ストリングス、何も内"" 数字、数字列 演算子、空白以外の任意の単一文字 空白は、文字列内にあるか、2つの数値を区切っていない限り、本質的に無視されます。 文字列/文字仕様: 文字列はで区切られ、が検出された"場合\、次の文字をエスケープする必要があります。 '文字はa で始まり、その後の'文字は文字列リテラルに変換されます。'a->"a" ' 常にその後に文字があります 終値を自動挿入する必要があります ルール: の形式evalは許可されません 入出力: 入力は、STDIN、関数パラメーター、または同等の言語を通じて取得できます。 出力は、配列または言語に最も近いものでなければなりません。
15 code-golf  parsing  code-golf  hexagonal-grid  code-golf  string  code-golf  string  code-golf  combinatorics  code-golf  ascii-art  code-golf  string  game  counting  code-golf  arithmetic  complex-numbers  code-golf  string  code-golf  decision-problem  hexagonal-grid  code-golf  string  sequence  code-golf  number  arithmetic  code-golf  ascii-art  code-golf  ascii-art  code-golf  string  arithmetic  code-golf  number  simulation  code-golf  number  arithmetic  code-golf  string  sequence  unicode  code-golf  string  ascii-art  balanced-string  code-golf  number  clock  code-golf  ascii-art  number  code-golf  math  number  sequence  code-golf  string  ascii-art  balanced-string  code-golf  math  string  popularity-contest  graphical-output  image-processing  code-golf  string  permutations  code-golf  string  code-golf  random  code-golf  string  cryptography  palindrome  code-golf  chess  code-golf  math  array-manipulation  topology  code-golf  math  sequence  code-golf  keyboard  classification  code-golf  string  sequence  code-golf  natural-language  code-golf  math  number  sequence  sorting  code-golf  sequence  combinatorics  grid  tic-tac-toe  code-golf  geometry  code-golf  number  restricted-source  new-years  expression-building 

2
有効なチェスの動きですか?
代替名: ChessMoveQ それぞれが4つの要素で構成される最大32個の要素のリストと、4つの要素を持つ2番目のリストが与えられた場合、2番目の入力で詳細な動きが有効なチェスの動きであるかどうかを判断します。 最初のリストは、ボード上の32個すべてのピースの位置を示しています。各要素は<colour>, <piece-name>, <x-coord>, <y-coord>、などの構造に従います["W", "K", 5, 1]。これは、白いキングが5, 1(e1通常のチェス盤で)オンであることを示します。最初の入力のすべての要素は一意です。<x-coord>そして<y-coord>、常に一つの例は以下のようになり1と8の間になります。 [["B", "K", 3, 8], ["B", "Q", 1, 5], ["B", "N", 4, 7], ["B", "N", 7, 8], ["B", "B", 2, 4], ["B", "R", 4, 8], ["B", "R", 8, 8], ["B", "P", 1, 7], ["B", "P", 2, 7], ["B", "P", 3, …

14
[N]とM反復の再帰的に連結された累積和
2つの正の整数NをM取得し[N]、M反復での連結累積和を作成します。最後の反復の結果を出力します。 連結累積合計の定義: 数字Nから始めてシーケンスを定義するX = [N] 追加Xの累積和X 手順を2 M回繰り返します。 ベクトルの累積合計X = [x1, x2, x3, x4]は次のとおり[x1, x1+x2, x1+x2+x3, x1+x2+x3+x4]です。 例N = 1とM = 4: P =累積和関数。 M = 0: [1] M = 1: [1, 1] - X = [1, P(1)] = [[1], [1]] M = 2: [1, 1, 1, 2] - X …
14 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
チェス盤迷路
チェスの駒(キング、クイーン、ルーク、ビショップ、ナイト)とポーンはボード上にありますが、a1またはh8スクエアにはありません。あなたの仕事は、空のa1から空のh8のマスに移動し、空のマスのみを通過することです。移動の規則は次のとおりです。 空の四角から隣の空の四角(同じランク、次または前のファイル、または同じファイル、次または前のランク)に進むことができます。 あなたは、斜め横に空の正方形(次または前の順位、次または前のファイル)に空の正方形から進むことができ提供猫のようなコーナー正方形は()は、2つのポーン又は反対の(B)ポーン/個のいずれかを含むこと色。(同じ色の2つのポーン以外のピース、またはポーン以外のピースとポーンは、コーナーでの進行を妨げるのに十分な強さですが、2つのポーンはそうではありません。反対の色のピース/ポーンは機能しませんたとえば、c4でd5が空の場合、c5とd4にポーンが含まれているか、反対の色のピース/ポーンが含まれている場合は、続行できます。写真については、以下の「対角線の例」セクションを参照してください。 入力 FENのボードの説明。つまり、入力は、ランク8の説明、スラッシュ(/)、ランク7の説明、スラッシュ、…、およびランク1の説明を含む文字列になります。各ランクの説明は、ファイルaからファイルhまでの数字と文字で構成されます。文字はピースとポーンを示します(黒いものはp= pawn、n= knight、b= bishop、r= rook、q= queen、k= king、およびwhiteです。 1つは同じものの大文字バージョンです)、数字は空の正方形の連続数を示します。たとえば、rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBN1プライ移動後のボード(キングのポーンはe4)チェスゲームで。 入力ではa1とh8は空になります。つまり、最初のスラッシュの前に数字があり、最後のスラッシュの後に数字があります。 出力 真実か偽か。h8への移行が成功したかどうかを示します。 入力が有効なFENボードの説明(つまり、上記の説明と一致するもの)でない場合、またはa1またはh8が使用されている場合、出力は何でもまたは何でもかまいません。(言い換えると、入力が上記の要件を満たしていると仮定できます。) 得点 これはコードゴルフです。最少バイトが勝ちます。 入出力の例 コードは、例だけでなく、すべての有効な入力に対して機能する必要があることに注意してください。 w各FENの後にスペースとaを追加して、で視覚化しhttp://www.dhtmlgoodies.com/scripts/chess-fen/chess-fen-3.htmlます。(他の一部のオンラインFENビジュアライザーは、チェスで違法なボード(ランク1または8のポーンなど)を許可しないため、この目的には使用できないことに注意してください。) 真実の例 8/8/8/8/8/8/8/8 —空のボード 1p1Q4/2p1Q3/2p1Q3/2p1Q3/2p1Q3/2p1Q3/Q1p1Q3/1q3q2—パスa1、b2、b3、b4、b5、b6、b7、c8、d7があります(e8ではなく 、ブロックされていますが)d6、d5、d4、d3、d2、d1、e1、f2、f3、f4、f5、f6、f7、f8、g8、h8 8/8/KKKKK3/K3K3/K1K1p3/Kp1K4/K1KK4/2KK4 —ある時点でブロックされた正方形を後で通過させる必要がある例(正方形を通過不可として設定しないようにするため) K1k1K1K1/1K1k1K1k/K1K1k1K1/1k1K1K1k/K1k1K1k1/1K1k1k1K/K1K1k1K1/1k1k1K1k—単一のパスがあります(鼻をたどるだけです。後方に一歩を踏み出さない限り、各ステップで移動する正方形は1つだけです)。これは、正方形が1つのポイントでブロックされているが、後で必要になる例でもあります 偽の例 6Q1/5N2/4Q3/3N4/2Q5/1N6/2Q5/1N6 —パスへの試みは、斜めに位置する2つの同じ色の部分を通過する必要があります。 N1q1K1P1/1R1b1p1n/r1B1B1Q1/1p1Q1p1b/B1P1R1N1/1B1P1Q1R/k1k1K1q1/1K1R1P1r— a8-h1の対角線を通る唯一の方法はf2-g3ですが、それは両方とも不可能なe1-d2またはf2-e3を通る必要があります。 4Q3/4q3/4Q3/5Q2/6Q1/3QqP2/2Q5/1Q6 4q3/4Q3/4q3/5q2/6q1/3qQp2/2q5/1q6 対角線の例 上記の散文が不明瞭な場合のために、ここにいくつかの写真があります。 通行可能対角線 通過できない対角線
14 code-golf  chess  maze 

1
失われたポーンの問題
失われたポーンの問題 チェスゲームが終了した後、生き残ったポーンは敵のラインの後ろに残されました。彼が家に戻る最短の道を見つけるのを手伝いましょう。 元の問題は、nXn「チェス」ボードとf: {1,..,n-1}X{1,..,n}X{-1,0,1} => R+重みの関数について説明しています。目標は、下の行のある正方形から上の行のある他の正方形への最適なパスを見つけることです。ここで、可能な動きは次のとおりです。左から上、右から上。 この問題は、動的プログラミングを使用してO(n ^ 2)で比較的簡単に解決できますが、これはcodegolfであり、実行時間の複雑さのような無駄なものは気にしません... 問題 入力:正確にサイズが通常のチェスボードに対応する3次元配列(または選択した他のコレクション、stdinを介して、または関数の引数として):7X8X3(#linePasses X #rowSize X #movesPerPass)非負の整数。移動コストから、いくつかの位置行インデックスであり、であり、列インデックスです。(i,j)ij a[i][j][0]広場まで、左旅行へのコストのために(i+1,j-1)、またはグラフィカル:\。 a[i][j][1]広場まで移動するためのコストについて(i+1,j):、またはグラフィカルに|。 a[i][j][2]広場まで、右走行へのコストのために(i+1,j+1)、またはグラフィカル:/。 合計がを超えるパスは含まれないと想定できますMAX_INT。 出力:最適な(最短、つまり重みの最小合計)パスを示す8X8 ascii出力(最適な結果が複数ある場合は、任意のパスを表示できます)。パスは下から上に描画されます。各行では、パス内のポーンの位置に対応する文字が、作成しようとしている文字です。例えば、ポーンが列3から(列2に)左上に移動しようとしている場合、描画する必要があります。 #?###### ##\##### どこ?が次の動きに置き換えられるべきか。最終位置はとして描画する必要がありますX。 例 入力: [ [[1,1,1],[1,1,1],[0,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]], [[1,1,1],[1,0,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]], [[1,1,1],[1,1,0],[1,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]], [[1,1,1],[1,1,1],[1,1,0],[1,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]], [[1,1,1],[1,1,1],[1,1,1],[1,0,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]], [[1,1,1],[1,1,1],[1,1,1],[1,0,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]], [[1,1,1],[1,1,1],[1,1,1],[0,1,1],[1,1,1],[1,1,1],[1,1,1],[1,1,1]] ] 出力: ##X##### ###\#### ###|#### ###|#### ##/##### #/###### #|###### ##\##### 入力: [ [[41,27,38],[12,83,32],[50,53,35],[46,32,26],[55,89,82],[75,30,87],[2,11,64],[8,55,22]], [[56,21,0],[83,25,38],[43,75,63],[56,60,77],[68,55,89],[99,48,67],[94,30,9],[62,62,58]], [[23,18,40],[24,47,61],[96,45,72],[71,6,48],[75,63,98],[93,56,51],[23,31,30],[49,34,99]], [[20,47,42],[62,79,72],[32,28,44],[68,61,55],[62,39,57],[4,17,49],[97,85,6],[91,18,12]], …
14 code-golf  chess 

2
チェス盤での爆発
アトミックチェスは、すべてのキャプチャが「爆発」を引き起こし、キャプチャしたピース、キャプチャを行うピース、および1平方半径のポーン以外のすべてを破壊するチェスの(非常に楽しい)バリアントです。この課題の目標は、原子チェスのゲーム全体をプレイすることではなく、単に特定の動きが行われたときに何が起こるかをシミュレートすることです。 免責事項:爆発効果音は含まれていません。 入力 ボードの位置は、フォーサイス・エドワーズ表記法 (一般にFENとして知られています)で与えられますが、最初のフィールドのみです。たとえば、次の入力: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR 開始位置を表します: これは文字列またはあなたの言語の同等物として受け取られなければなりません。有効であることが保証されています。たとえば、10人の王がいるかどうか、または王がまったくいないかどうかを気にする必要はありません。 また、シミュレートする動きが与えられます。これは、2つの正方形の名前として表されます。移動するピースがある正方形と、移動する正方形です。たとえば、上の図でキングのポーンを2スペース前方に移動すると、次のように表されます。 e2e4 これも文字列として解釈する必要があります。移動は常に有効であり、キャストをサポートする必要はありません。en passantをサポートする必要があります。これについては、次のセクションで詳しく説明します。 出力 プログラムの出力は、指定された移動(および必要に応じて分解された部分)が行われ、入力と同じ部分FEN表記である必要があります。 爆発の正確なルールは次のとおりです。 キャプチャされるピースを削除します(これは、キャプチャが一時通過である場合を除き、常に入力で指定された2番目の正方形のピースになります)。 キャプチャを行っているピースを削除します(これは常に入力で指定された最初の正方形のピースになります)。 次のものをすべて削除します。 キャプチャが行われた場所を囲む8つの正方形の1つに位置します(パッサンにとっては、これが爆発しない場合、これはキャプチャポーンが置かれる正方形です)。 ポーンではありません。 不慣れな人のためのパッサンルールの簡単な概要:ポーンが開始ランクから2スペース前方に移動し、1マスだけ前方に移動した場合にそれをキャプチャできるポーンがある場合は、とにかくキャプチャすることができますが、後続の移動のみ。このキャプチャは、「行われると言われて渡しに」(またはフランス語で「アンアンパッサン」)。 テストケース 写真では、緑色の矢印はこれから行われる動きを表し、緑色の円は爆発した破片を表します。 入力:rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR、g1f3 出力:rnbqkbnr/pppppppp/8/8/8/5N2/PPPPPPPP/RNBQKB1R 入力:3kBb1r/pp5p/3p4/4pn2/P7/1P2P1pP/2rP1P2/R1B3RK、f2g3 出力:3kBb1r/pp5p/3p4/4pn2/P7/1P2P2P/2rP4/R1B3RK (http://en.lichess.org/ocoSfS5I/white#36から盗まれた) 入力:rnbqk1nr/1pp5/p2pp1pp/5p2/1bN5/2P1PQ1N/PP1P1PPP/R1B1KB1R、f3b7 出力:3qk1nr/2p5/p2pp1pp/5p2/1bN5/2P1P2N/PP1P1PPP/R1B1KB1R (http://en.lichess.org/NCUnA6LV/white#14から盗まれた) 入力:rnbqk2r/pp2p2p/2p3pb/3pP3/5P2/2N5/PPPP2P1/R1BQKB1R、e5d6 出力:rnbqk2r/pp2p2p/2p3pb/8/5P2/2N5/PPPP2P1/R1BQKB1R (http://en.lichess.org/AvgU4Skq/white#16から盗まれました;これは実際の動きではありませんでしたが、実際に不意を突かれたアトミックゲームを見つけるのは面倒でした: P) 入力:5r2/2k5/p1B5/1pP1p3/1P4P1/3P4/P7/1K3R1q、c6h1 出力:5r2/2k5/p7/1pP1p3/1P4P1/3P4/P7/1K3R2 (http://en.lichess.org/l77efXEb/white#58から盗まれた) 得点 これはcode-golfであるため、バイト単位の最短コードが優先されます。
14 code-golf  chess 

3
チェックメイトですか?
このサイトには多数のチェスのパズルがあるため、これがまだ投稿されていないことに完全に驚きました。私は自分でこれを考えていましたが、3月にサンドボックスに投稿したことについてAnushに感謝しますます。しかし、私は自分で先に進むことができるほど長いと思った。 チェスのチェックメイトは、キングが攻撃され、それを防御できる動きがない状況です。チェスの駒の動きに慣れていない場合は、ウィキペディアで詳しく知ることができます。 チャレンジ この挑戦のために、あなたのインプットはあなたが好きな表記法でチェス盤の位置になります。明確にするために、あなたの入力はチェス盤上の駒を色と位置とともに説明し、もしあれば可能性のある一時的な捕獲広場も示します。(キャッスルをチェックアウトすることはできないため、キャッスルする能力は無関係です。)FEN表記は便利ですが、便利なフォーマットであれば問題ありません。簡単にするために、あなたはそれがプレイする黒だと仮定することができます -これは、黒が常にチェックメイトされたプレイヤーであることを意味します。ホワイトがチェック、チェックメイト、またはステイルメイトにあるポジションは、このチャレンジでは無効と見なされます。 位置がチェックメイトの場合は真実の値を出力し、そうでない場合は偽の値を出力する必要があります。膠着状態はチェックメイトではないことに注意してください -キングを攻撃する必要があります! 真実のテストケース 1k5R / 6R1 / 8/8/8/8/8 / 6K1 b-- rn2r1k1 ​​/ pp1p1pQp / 3p4 / 1b1n4 / 1P2P3 / 2B5 / P5PP / R3K2R b-- kr5R / rB6 / 8/8/8 / 5Q2 / 6K1 / R7 b-- 2K5 / 1B6 / 8/8/8 / …

5
司教に強いパスワード
パスワードビショップの良さと混同しないでください! 文字列が与えられ、それが司教に強いパスワードを構成している場合は答えます(真/偽または2つの一貫した値)。 パスワードは、文字の各ペアがチェスボード上の正方形として解釈できるように、文字(in )と数字(in )が交互になった文字列であり、名前の付いた各正方形に白いポーンを配置すると、司教に対して強力ですパスワードでは、最初の()行の任意の正方形から最後の()行の任意の正方形まで、白人の司教が連続して何回も移動する方法はありません。a-h1-818 例 司教に強いパスワード a1b1c1d1e1f1g1h1 a8b8c8d8e8f8g8h8 a1b2c3d4d5f5f4g3g4h2b5 h4g4f4e4c4b4a4c3e3 a1b1c1d1e1f1g1a8b8c8d8e8f8g8 b4b5d4d5f4f5g3h5 たとえばa1b1c1d1e1f1g1a8b8c8d8e8f8g8、位置にb4b5d4d5f4f5g3h5対応し、位置に対応します 司教に弱いパスワード a4c4e4g4g5d6f6e3d2b2 (整形式だが強くはない-この例についてはジョー・キングに感謝!) b1c1d1e1f1g1h1a8b8c8d8e8f8g8 (整形式だが強くない) h4g4f4e4c4b4a4c3 (整形式だが強くない) d4 (整形式だが強くない) b4b5d4d5f4f5g2h5 (整形式だが強くない) correct horse battery staple (不正な形式) 1a1b1c1d1e1f1g8a8b8c8d8e8f8g (不正な形式) a (不正な形式) aa (不正な形式)

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