Scrivi un programma o una funzione che riceve come input una stringa che rappresenta una parola gallese (UTF-8 se non diversamente specificato da te).
Le seguenti sono tutte lettere singole in gallese:
a, b, c, ch, d, dd, e, f, ff, g, ng, h, i, j, l, ll, m, n, o, p, ph, r, rh, s, t, th, u, w, y
Per citare Wikipedia ,
Mentre i digrafi ch , dd , ff , ng , ll , ph , rh , th sono scritti ciascuno con due simboli, sono tutti considerati come lettere singole. Ciò significa, ad esempio, che Llanelli (una città nel Galles del Sud) è considerato avere solo sei lettere in gallese, rispetto alle otto lettere in inglese.
Queste lettere esistono anche in gallese, sebbene siano limitate al vocabolario tecnico preso in prestito da altre lingue:
k, q, v, x, z
Le lettere con segni diacritici non sono considerate lettere separate, ma la tua funzione deve accettarle ed essere in grado di contarle. Possibili lettere di questo tipo sono:
â, ê, î, ô, û, ŷ, ŵ, á, é, í, ó, ú, ý, ẃ, ä, ë, ï, ö, ü, ÿ, ẅ, à, è, ì, ò, ù, ẁ
(Ciò significa che ASCII non è una codifica di input accettabile, poiché non può codificare questi caratteri.)
Gli appunti:
- Questo è il codice golf.
- Non devi tenere conto di parole come llongyfarch , in cui ng non è un digrafo, ma due lettere separate. Questa parola ha nove lettere, ma puoi contarla erroneamente come otto. (Se riesci a spiegare queste parole, è fantastico, ma al di fuori dell'ambito di questa sfida.)
- È garantito che l'input non abbia spazi bianchi (a meno che non lo si preferisca con una nuova riga finale (o qualcosa di più esoterico), nel qual caso può essere fornito). Non ci saranno certamente spazi bianchi interni.
Casi test:
- Llandudno, 8
- Llanelli, 6
- Rhyl, 3
- Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch, 50 (davvero 51, ma conteremo 50)
- Per, 3
- Cymru, 5
- Glyndŵr, 7