Universal Cup Judging System

Universal Cup

Límite de tiempo: 2 s Límite de memoria: 2048 MB Puntuación total: 100 Dificultad: [mostrar] Hackeable ✓
Estadísticas

A Little Cyan Fish piacciono moltissimo le lingue diverse. Oggi vuole presentarti il cantonese.

Le sillabe cantonesi possono essere scritte con lettere latine usando il Jyutping$^\ast$. Ti dà una stringa $s$ e ti chiede se rappresenta la grafia di una sillaba cantonese valida senza numero di tono.

Per questo problema, le regole complete sono date dalla tabella seguente. Ogni colonna è un'iniziale, la parte all'inizio di una sillaba, e ogni riga è una finale, la parte rimanente. La colonna etichettata con $\varnothing$ rappresenta un'iniziale vuota, che non contribuisce con alcuna lettera. Una cella contenente $1$ significa che l'iniziale e la finale possono essere combinate; una cella contenente $0$ significa che non possono esserlo. Una grafia valida si ottiene concatenando l'iniziale di una colonna e la finale di una riga la cui cella contiene $1$, in quest'ordine. Nessun'altra grafia è valida.

La finale include la sua vocale ed eventuali consonanti finali. Le finali m e ng sono suoni nasali speciali che possono formare sillabe senza vocale; anche le loro combinazioni consentite sono incluse nella tabella. Vengono scritte solo le lettere mostrate nella tabella: non ci sono spazi, separatori o numeri di tono.

Ad esempio, ngaan e zeoi sono grafie valide, mentre chong non lo è. Aiuta Little Cyan Fish a controllare la sua grafia.

Finale $\varnothing$ b p m f d t n l g k ng h gw kw w z c s j
aa 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
aai 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
aau 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1
aam 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0
aan 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 0
aang 1 1 1 1 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1
aap 1 0 0 0 0 1 1 1 1 1 0 1 1 0 0 0 1 1 1 1
aat 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 0
aak 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
a 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0
ai 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
au 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1
am 1 1 0 1 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1
an 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
ang 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
ap 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1
at 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1
ak 1 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0
e 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1
ei 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 1 0
eu 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0
em 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
en 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
eng 0 1 1 1 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 1
ep 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0
et 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
ek 0 1 1 0 0 1 1 0 1 0 1 0 1 0 0 0 1 1 1 0
i 0 1 0 1 0 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1
iu 0 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1
im 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1
in 0 1 1 1 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1
ing 0 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1
ip 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1
it 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1
ik 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1
o 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1
oi 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0
ou 1 1 1 1 0 1 1 1 1 1 0 1 1 0 0 0 1 1 1 0
on 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0
ong 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
ot 1 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0
ok 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
oe 0 0 0 0 0 1 1 0 1 1 1 0 1 0 0 0 1 0 1 0
oeng 0 0 0 0 0 1 0 1 1 1 1 0 1 0 0 0 1 1 1 1
oet 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0
oek 0 0 0 0 0 1 0 1 1 1 1 0 0 0 0 0 1 1 1 1
eoi 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1
eon 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 1
eot 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 0
u 0 0 0 0 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0
ui 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0
um 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
un 0 1 1 1 1 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0
ung 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1
up 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ut 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 0 0 0
uk 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1
yu 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
yun 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 1
yut 0 0 0 0 0 1 1 0 1 1 1 0 1 0 0 0 1 1 1 1
m 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
ng 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0

$^\ast$Per semplicità, in questo problema, Little Cyan Fish ha rimosso i numeri di tono dai suoi appunti.

Tabella adattata dalla Cantonese Pronunciation List of the Characters for Computers (CC BY 4.0) della Linguistic Society of Hong Kong, con le aggiunte descritte nello schema Jyutping e nella sua espansione del 2018. Le celle soprastanti definiscono le grafie accettate in questo problema.

Input

La prima riga contiene un intero $T$ ($1 \le T \le 10^5$), il numero di casi di test.

L'unica riga di ciascun caso di test contiene una stringa $s$ ($1 \le |s| \le 6$), composta esclusivamente da lettere minuscole (da a a z).

Output

Per ciascun caso di test, stampa Yes se $s$ è una grafia valida, e No altrimenti.

Esempi

Input 1

5
ngaan
zeoi
chong
jaai
pak

Output 1

Yes
Yes
No
Yes
No

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.