このチャレンジの目標は、移動がイングリッシュチェッカーの移動かどうかを判断することです。
この課題では、8x8ボードを使用します。動かされた駒は、対角線方向にのみ動くことができる男性(キングではない)として扱われるべきです。ボードには0個以上の黒い部分と1個以上の白い部分があります。現在、白い部分が1つ移動しています。真後ろの正方形が空の場合、白い部分はその前にある1つの黒い部分に斜めにジャンプできます。対角線の前に斜め方向の別の黒い部分がある場合、その位置からさらにジャンプすることができます。キャプチャは必須であるため、利用可能なジャンプを行わないことは違法です。ただし、ジャンプの数を最大化する経路を取ることは必須ではありません。基本的に、これはジャンプをし、終了位置から別の可能なジャンプがある場合、その動きは違法であることを意味します。ピースの位置には、次の番号付けスキームを使用します。
ルール
入力:
黒い部分を表す数値のリスト。
白い部分を表す数字のリスト。
白い部分の開始位置
白い部分の終了位置
出力:
- 移動が有効な場合は真の値、それ以外の場合は偽の値
白い部分が常に開始位置を占めると想定できます。
便利な場合は、入力3を受け入れる代わりに、ホワイトピースリストの最初のホワイトピースに開始位置が含まれると想定できます。
標準的なコードゴルフ規則。バイト数が最も少ない。
テストケース
説明のために、Oは開始位置、Xは終了位置、Bは黒い断片、Wは白い断片です。
Black pieces: []
White pieces: [5]
Move: (5, 1)
Output: True
Single move no jump
X _ _ _
O _ _ _
B: [6]
W: [9]
M: (9, 2)
O: True
Single jump
_ X _ _
_ B _ _
O _ _ _
B: [2, 6]
M: (9, 2)
O: False
Illegal ending position on top of black piece
_ X _ _
_ B _ _
O _ _ _
B: [7, 14]
W: [17]
M: (17, 3)
O: True
Double jump
_ _ X _
_ _ B _
_ _ _ _
_ B _ _
O _ _ _
B: [7, 14]
M: (17, 10)
O: False
Illegal jump, must take the next jump as well
_ _ _ _
_ _ B _
_ X _ _
_ B _ _
O _ _ _
B: [4]
W: [8]
M: (8, 3)
O: False
Illegal jump across the board
_ _ _ X
B _ _ _
O _ _ _
B: [6, 7]
W: [6]
M: (10, 1)
O: True
Split decision p1
X _ _ _
_ B B _
_ O _ _
B: [6, 7]
M: (10, 3)
O: True
Split decision p2
_ _ X _
_ B B _
_ O _ _
B: [2]
W: [1]
M: (1, 3)
O: False
Sideways Jump
O B X _
B: [6]
W: [1]
M: (1, 10)
O: False
Backwards Jump
O _ _ _
_ B _ _
_ X _ _
B: [6]
W: [9, 2]
M: (9, 2)
O: False
Illegal ending position on top of white piece
_ X _ _
_ B _ _
O _ _ _
B: []
W: [9, 6]
M: (9, 2)
O: False
Illegal jump over white piece
_ X _ _
_ W _ _
O _ _ _
B: [8, 15, 23, 24]
W: [27]
M: (27, 4)
O: True
Split decision long path
_ _ _ X
_ _ _ B
_ _ _ _
_ _ B _
_ _ _ _
_ _ B B
_ _ W _
B: [8, 15, 23, 24]
W: [27]
M: (27, 20)
O: True
Split decision short path
_ _ _ _
_ _ _ B
_ _ _ _
_ _ B _
_ _ _ X
_ _ B B
_ _ W _
(英語)チェッカーのプレイ方法がわかりません。法的措置とは何かについて、もう少し詳細を追加していただけませんか。
—
tsh 2018
キャプチャは必須であるため、利用可能なジャンプを行わないことは違法です。「ジャンプする」とはどういう意味ですか?
—
Erik the Outgolfer
@JonathanAllan私は説明であなたの質問に対処し、テストケースを追加したと思います。
—
aoemica
B=[8,15,23,24];W=[27]
のそれぞれとM=[27,4]
し、M=[27,20]
それが方向転換を与える1。2それは私が持っている質問に答えます:どちらも有効ですか、それとももっと長く取らなければなりませんか?(「キャプチャは必須なので、利用可能なジャンプを行わないことは違法です」という種類の両方が有効であることを示唆していますが、可能であればキャプチャしないことを違法にする理由はわかりません。可能な限り多くの作品?)