В настольной игре «Поселенцы Катана» есть пять типов ресурсов: Кирпич, Бревно, Руда, Пшеница и Овцы. Строительство поселения стоит Кирпич, Бревно, Пшеница и Овца. Однако вы также можете торговать четырьмя одинаковыми ресурсами, чтобы получить ресурс другого типа. Например, если у вас в руке было четыре руды, вы могли бы обменять их всех и получить одну овцу.
Ваша задача - определить, могу ли я построить поселение, учитывая мою руку.
Твое задание
Ввод будет последовательностью букв B
, L
, O
, W
, и S
, взятые в любом приемлемом формате. Эти буквы соответствуют пяти типам ресурсов, приведенным выше. Вы должны указать, есть ли у меня ресурсы, необходимые для построения поселения, принимая во внимание возможность торговли четырьмя видами.
Это код-гольф , поэтому выигрывает самый короткий код в байтах.
Заметки
- Вам не нужно выводить, какие сделки мне нужно совершить или сколько расчетов я мог бы построить. Простое «да» или «нет» подойдет.
- Вы не можете предполагать, что входные данные находятся в каком-либо определенном порядке. В частности, вы не можете предполагать, что ресурсы одного и того же типа сгруппированы, так
OBLSO
что это допустимый ввод. - Это проблема принятия решения , поэтому вы можете использовать любое значение, которое хотите обозначить «да» и «нет», если два выбранных значения различны и согласованы.
- Здесь нас интересуют только те правила, которые перечислены выше. Более сложные правила Settlers of Catan, такие как торговля с другими игроками или в гаванях, здесь не актуальны.
- Входные символы (
B
,L
,O
,W
,S
) могут быть заменены другими значениями , если это проще для конкретного языка выбора, до тех пор, пока пять различных входов. Если вы используете другие входные значения, укажите их в своем ответе.
Примеры
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)