I dadi con le lettere sono comuni nei giochi di parole. Ad esempio, può essere divertente provare a pronunciare parole divertenti con i dadi boggle. Se prendi una manciata di dadi, è probabile che non sarai in grado di scrivere alcune parole. Questa sfida è una generalizzazione di quell'idea.
Sfida
Dato un elenco di dadi che hanno almeno 1 faccia e una parola, il tuo compito è determinare se è possibile sillabare quella parola usando i dadi indicati (nel qual caso, dovrebbe restituire un risultato veritiero). È possibile utilizzare solo una lettera per ogni dado e un dado può essere utilizzato una sola volta. Non è necessario utilizzare tutti i dadi indicati.
Esempi
In un esempio banale, con i dadi [[A], [C], [T]] e la stringa CAT, il risultato è vero. Le BAT, ovviamente, restituirebbero false poiché non ci sono dadi con B su di esse
Se dato [[A, E, I, O, U], [A, B, C, T], [N, P, R]] come set di dadi, torneresti vero per ART, TON e CUR , ma falso per CAT, EAT e PAN perché quelle stringhe richiedono il riutilizzo dei dadi. Dovrebbe anche essere abbastanza ovvio che CRAB non può essere scritto con questi dadi poiché non ci sono abbastanza dadi.
Se viene dato [[A, B, C], [A, E, I], [E, O, U], [L, N, R, S, T]] come set di dadi, si sarebbe in grado di scrivi CAT, BEE, BEAN, TEA, BEET e BAN, ma non potresti scrivere LONE, CAB, BAIL, TAIL, BAA o TON
Potrebbero esserci multipli dello stesso dado. Se indicato [[A, B, C], [A, B, C], [A, B, C]], si sarebbe in grado di scrivere CAB, BAA, AAA, ecc ... ma ovviamente nulla senza A, B o C in esso.
Regole
- Nessuna lacuna standard di sfruttamento
- Questo è code-golf , quindi vince il codice più corto.
- Puoi presumere che parole e dadi saranno composti solo da lettere maiuscole.
- Puoi presumere che la parola sarà sempre lunga almeno 1 lettera e che ci sarà sempre almeno 1 dado.
- Puoi presumere che un dado non avrà mai più di una stessa lettera.
- L'input e l'output possono essere in qualsiasi formato conveniente.