Ваша задача - найти, сколько разных последовательностей Блэкджек можно найти в упорядоченном списке из 12 карт.
Последовательность блэкджека определяется как последовательность последовательных карт, сумма очков которых составляет ровно 21. Очки подсчитываются в соответствии со следующей таблицей:
Symbol | Name | Points Symbol | Name | Points
-------+-------+-------- -------+-------+--------
2 | Two | 2 9 | Nine | 9
3 | Three | 3 T | Ten | 10
4 | Four | 4 J | Jack | 10
5 | Five | 5 Q | Queen | 10
6 | Six | 6 K | King | 10
7 | Seven | 7 A | Ace | 1 or 11
8 | Eight | 8
вход
Строка из 12 символов, используя символы, описанные выше. Нам плевать на цвета карточек, поэтому они не предусмотрены.
Пример:
K6K6JA3Q4389
Выход
Количество различных последовательностей Блэкджек, которые можно найти во входной строке.
Пример:
K6K6JA3Q4389
включает в себя две различные последовательности Блэкджек:
JA
с тузом считается 11 очками (10 + 11 = 21)A3Q43
с тузом считается 1 очко (1 + 3 + 10 + 4 + 3 = 21)
Так что ответ будет 2
.
правила
- Две последовательности Блэкджек считаются различными, если они содержат разные карты или одинаковые карты в разных порядках. Если одна и та же последовательность появляется в разных позициях в списке ввода, она должна учитываться только один раз.
- Последовательности блэкджека могут перекрывать друг друга.
- Каждый вид карты может появляться до 12 раз в последовательности. (Мы предполагаем, что карты выбраны как минимум из 3 разных колод).
- Если во входной строке нет последовательности Блэкджека, вы должны вернуть
0
или любое другое ложное значение. - Это код-гольф, поэтому выигрывает самый короткий ответ в байтах. Стандартные лазейки запрещены.
Контрольные примеры
Последовательности предоставлены в информационных целях, но вам нужно только вывести их количество.
Input | Output | Distinct sequences
-------------+--------+--------------------------------------------------------
3282486Q3362 | 0 | (none)
58A24JJ6TK67 | 1 | 8A2
Q745Q745Q745 | 1 | Q74
AAAAAAAAAAAA | 1 | AAAAAAAAAAA
T5AQ26T39QK6 | 2 | AQ, 26T3
JQ4A4427464K | 3 | A442, 44274, 7464
Q74Q74Q74Q74 | 3 | Q74, 74Q, 4Q7
37AQKA3A4758 | 7 | 37A, 37AQ, AQ, AQK, QKA, KA, A3A475
TAQA2JA7AJQA | 10 | TA, TAQ, AQ, QA, A2JA7, 2JA7A, JA, AJ, AJQ, JQA
TAJAQAKAT777 | 13 | TA, TAJ, AJ, JA, JAQ, AQ, QA, QAK, AK, KA, KAT, AT, 777