MtG-goodness:Magic:The Gathering Combat with Abilitiesの詳細
前提:
マジック:ザギャザリングでは、必要な量の土地をタップしてマナコストを支払うことで、呪文を唱えます。これらの土地は、次の5つの色のいずれかを生成できます。
- ホワイト(W)
- 青(U)
- 黒(B)
- 赤(R)
- 緑(G)
コストは2つの部分で構成されています。一般的なマナ要件である数と、色のマナ要件を表す一連のシンボルです。数値は一般的なマナコストであり、任意の色のマナを使用して満たすこと(3)
ができますWGG
。たとえば、で支払うことができます。シンボルは、特定の色の1:1の要件です。たとえばWWUBR
、2つの白マナ、1つの青、1つの黒、1つの赤が必要です。Genericパーツは常にColoredパーツの前に来ます。注意として、(0)
は有効なコストであり、処理する必要があります。
完全に汎用的であるか、完全に色付けされているか、またはその両方のコストを持つことができます。たとえば、次のカードのコストは4BBで、色のマナ4つと黒のマナ2つが支払われます。
この挑戦の土地はそれぞれ1マナを生み出します。ただし、複数の色を生成できるが、1マナしか得られない土地を検討します。たとえばG
、緑のマナWG
を生成し、1つの白または1つの緑を生成できます。
入力:
カードのコストと土地のリストの2つの入力が与えられます。
カードのコストは、文字列、または色の部分の数字と文字列を含むタプルのいずれかです。一般的な部分がない場合は、文字列/タプルに0を埋め込むことができます。
土地リストは文字列のリストであり、それぞれが特定の土地で生成できるものです。このリストは空にすることができます(土地がない場合)。これをビットマスクロジックを使用してintのリストとして取得することもできますが、そうする場合はスキームをポストします。それが重要である場合、注文もあなた次第です。それ以外の場合は、WUBRG
注文が想定されます。
#Example input formats
"4BB", ("WG","B","B") #
(4,"BB"), (7,3,3) #Both should return falsy
出力:
truthy
あなたの土地に与えられたコストを首尾よく支払うことができる場合の価値と、あなたが支払うfalsey
ことができない場合の価値。
ルール:
- 有効な入力が保証されます
- マナは常に「WUBRG」の順番であると想定されます。別の注文が必要な場合は、回答にその旨を明記してください。
- 色は常にコストでグループ化されます。例:「WWUBBRG」
- 入力には、すべて大文字またはすべて小文字のいずれかを使用します。
- 正規表現
127[WUBRG]{127}
と254の土地を処理できるはずです。 - 禁止されている標準の抜け穴
- これはコードゴルフであり、言語の勝利ごとの最短の答えです
例:
"0", ("") => 1
"1BB", ("WG","B","B") => 1
"BB", ("WG","B","B") => 1
"WB", ("WG","B","B") => 1
"1UB", ("W","U","B") => 1
"1BB", ("WB","WB","WG") => 1
"1", ("WG","B","B") => 1
"1BB", ("WGR","WB","WB") => 1
"WUBRG", ("W","U","B","R","G") => 1
"1WWUBB", ("W","WG","U","B","B","R") => 1
"10BB", ("WGR","WB","WB","B","B","B","B","B","B","B","B","B") => 1
"R", ("") => 0
"4", ("WG","B","B") => 0
"1BB", ("WG","WB") => 0
"1UB", ("WG","W","UB") => 0
"1UBR", ("W","WG","UBR") => 0
"WUBRG", ("WUBRG") => 0
"1WWUBB", ("W","WG","U","B","B") => 0
"10UU", ("WGR","WB","WB","B","B","B","B","B","B","B","B","B") => 0