Il tuo compito è scoprire quante sequenze distinte di Blackjack si possono trovare in un elenco ordinato di 12 carte.
Una sequenza di Blackjack è definita come una sequenza di carte consecutive la cui somma di punti è esattamente 21. I punti vengono contati secondo la seguente tabella:
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
Ingresso
Una stringa di 12 caratteri, utilizzando i simboli sopra descritti. Non ci interessa il colore delle carte, quindi non vengono fornite.
Esempio:
K6K6JA3Q4389
Produzione
Il numero di sequenze distinte del Blackjack che è possibile trovare nella stringa di input.
Esempio:
K6K6JA3Q4389
include due distinte sequenze di Blackjack:
JA
, con l'asso contato come 11 punti (10 + 11 = 21)A3Q43
, con l'asso contato come 1 punto (1 + 3 + 10 + 4 + 3 = 21)
Quindi la risposta sarebbe 2
.
Regole
- Due sequenze di Blackjack sono considerate distinte se contengono carte diverse o le stesse carte in ordini diversi. Se la stessa sequenza esatta appare in posizioni diverse nell'elenco di input, deve essere contata una sola volta.
- Le sequenze del Blackjack possono sovrapporsi.
- Ogni tipo di carta può apparire fino a 12 volte nella sequenza. (Partiamo dal presupposto che le carte sono prese da almeno 3 mazzi diversi.)
- Se non è possibile trovare una sequenza di Blackjack nella stringa di input, è necessario restituire
0
o qualsiasi altro valore errato. - Questo è code-golf, quindi vince la risposta più breve in byte. Sono vietate le scappatoie standard.
Casi test
Le sequenze sono fornite a scopo informativo, ma è necessario solo emetterne il numero.
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