W grze planszowej The Settlers of Catan istnieje pięć rodzajów zasobów: cegła, kłoda, ruda, pszenica i owca. Budowa osady kosztuje cegłę, kłodę, pszenicę i owcę. Możesz jednak także wymienić cztery identyczne zasoby, aby uzyskać zasób innego typu. Na przykład, jeśli masz w ręku cztery rudy, możesz wymienić je wszystkie i zdobyć jedną owcę.
Twoim zadaniem jest ustalenie, czy mogę zbudować osadę, biorąc pod uwagę moją rękę.
Twoje zadanie
Wejście będzie ciągiem liter B
, L
, O
, W
, i S
, podjęte w dowolnym rozsądnym formacie. Litery te odpowiadają pięciu typom zasobów podanym powyżej. Powinieneś wypisać, czy mam zasoby niezbędne do zbudowania ugody, biorąc pod uwagę możliwość handlu tego rodzaju.
To jest golf golfowy , więc wygrywa najkrótszy kod w bajtach.
Notatki
- Nie musisz generować, jakie transakcje muszę wykonać ani ile rozliczeń mogę zbudować. Wystarczy proste „tak” lub „nie”.
- Być może nie przyjąć, że wejście jest w dowolnej kolejności określonej. W szczególności nie można zakładać, że zasoby tego samego typu są pogrupowane razem, więc
OBLSO
jest to prawidłowe dane wejściowe. - Jest to problem decyzyjny , więc możesz użyć dowolnej wartości, którą chcesz oznaczać „tak” i „nie”, o ile dwie wybrane wartości są różne i spójne.
- Jedyne zasady, którymi się tu zajmujemy, to te wymienione powyżej. Bardziej skomplikowane zasady Osadników z Catanu, takie jak handel z innymi graczami lub w portach, nie są tutaj istotne.
- Znaki wejściowe (
B
,L
,O
,W
,S
) można zastąpić innymi wartościami, jeśli jest to łatwiejsze dla danego języka wyboru, tak długo, jak istnieje pięć odrębnych wejść. Jeśli używasz innych wartości wejściowych, podaj je w swojej odpowiedzi.
Przykłady
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)