でカタンの開拓者のレンガ、ログ、鉱石、小麦、および羊:ボードゲーム、5つのリソースタイプがあります。集落の建設には、レンガ、丸太、小麦、羊が必要です。ただし、4つの同一のリソースを交換して、異なるタイプのリソースを取得することもできます。たとえば、4つの鉱石を手に持っている場合、それらすべてを交換して1頭の羊を入手できます。
あなたの仕事は、私の手を与えられて、私が和解を構築できるかどうかを判断することです。
あなたのタスク
入力は文字の配列になりますB
、L
、O
、W
、およびS
、任意の合理的なフォーマットで撮影しました。これらの文字は、上記の5つのリソースタイプに対応しています。私は、4種類の取引の可能性を考慮して、和解を構築するために必要なリソースがあるかどうかを出力する必要があります。
これはcode-golfであるため、バイト単位の最短コードが優先されます。
ノート
- あなたは、私が実行する必要がある取引または私が構築できるいくつの和解を出力する必要はありません。単純な「はい」または「いいえ」で十分です。
- 入力が特定の順序であると想定することはできません。特に、同じタイプのリソースがグループ化されているとは想定できないため
OBLSO
、有効な入力です。 - これは意思決定問題であるため、選択した2つの値が明確で一貫している限り、「はい」と「いいえ」を意味する任意の値を使用できます。
- ここで関係しているルールは、上記のルールのみです。他のプレイヤーや港での取引のような、より複雑なカタンの開拓者のルールはここでは関係ありません。
- 入力された文字(
B
、L
、O
、W
、S
それは選択のあなたの特定の言語のために簡単である場合)ので、長い5つの別個の入力があるので、他の値で置換することができます。他の入力値を使用する場合は、回答でそれらを指定してください。
例
BLWS -> Yes
OOOOWLB -> Yes (trade four O for a S)
OOW -> No
BBBO -> No
(empty input) -> No
BBBBLW -> No
BBBBBLW -> Yes (trade four B for a S)
OOOOOOOOOOOOOOOO -> Yes (sixteen O; trade for B, L, W, S)
BLBLBLBLBL -> Yes (trade L for W and B for S)
BLSWBLSWBLSW -> Yes (extra, unused resources are ignored)