Você está observando um grupo de crianças se divertindo em uma partida amistosa de Quartets. Em certo momento, começa a suspeitar que algumas estão trapaceando. As próprias crianças não parecem se incomodar com isso. Pelo contrário, acham ainda mais divertido, especialmente quando alguém é pego trapaceando. Como programador, você imediatamente começa a pensar em maneiras de detectar trapaças apenas observando a partida.
Quartets é um jogo de cartas para quatro jogadores que usa um baralho de $32$ cartas dividido em $8$ conjuntos de $4$ cartas. As cartas reais costumam conter imagens educativas, ajudando a aprender tanto objetos individuais como sua classificação. Por exemplo, podem mostrar animais, e os conjuntos podem corresponder a diferentes grupos de animais (mamíferos, répteis etc.).
Quatro cartas de um conjunto, de um baralho alemão de Quartets de Wilhelm Busch, via Wikimedia Commons, domínio público.
No início, cada jogador recebe $8$ cartas, e o jogador $1$ inicia seu turno. Em cada turno, um jogador pergunta a outro se possui uma carta específica. Se o jogador consultado a tiver, deve entregá-la ao solicitante, que continua seu turno pedindo outra carta a qualquer jogador. Se não a tiver, o solicitante perde o turno e o jogador consultado começa o seu. Uma regra importante exige que o solicitante já tenha pelo menos uma carta do mesmo conjunto da carta solicitada.
Se, durante seu turno, um jogador tiver um conjunto completo («quarteto»), poderá mostrá-lo aos demais, colocá-lo de lado e ganhar um ponto. As quatro cartas são removidas permanentemente da partida. Se em qualquer momento um jogador ficar sem cartas, ele sai do jogo. Se era seu turno, ele passa ao próximo jogador na ordem $1$-$2$-$3$-$4$-$1$-$\ldots$ que ainda tenha cartas. Se ninguém tiver cartas, a partida termina e vence quem tiver mais pontos.
Não é permitido pedir cartas já removidas da partida, nem pedir uma carta a um jogador que saiu do jogo.
Há duas situações em que pode ocorrer trapaça em Quartets, quando alguém afirma falsamente ter (ou não ter) uma carta. Especificamente, há trapaça se
um jogador pede uma carta sem ter nenhuma carta do conjunto correspondente, ou
um jogador consultado afirma não ter a carta solicitada, embora a tenha.
Naturalmente, a trapaça costuma ser descoberta mais tarde. Em teoria, um oponente atento pode acabar descobrindo qualquer trapaça, pois todas as cartas são reveladas em algum momento antes do fim da partida.
Pedir uma carta que o jogador consultado não pode ter (por exemplo, porque o solicitante a tem em sua própria mão) não é uma jogada inteligente, mas, por si só, não é considerado trapaça.
Entrada
A primeira linha contém um inteiro $n$ ($1 \le n \le 1000$), o número de ações consecutivas em uma partida de Quartets, desde seu início. As próximas $n$ linhas descrevem uma ação cada. Cada ação ocupa uma linha e pode ser uma das seguintes:
x A y sk yes— o jogador $x$ pede ao jogador $y$ a carta $sk$, e o jogador $y$ entrega essa carta ao jogador $x$;x A y sk no— o jogador $x$ pede ao jogador $y$ a carta $sk$, o jogador $y$ afirma não tê-la e inicia seu turno;x Q s— o jogador $x$ coloca de lado o quarteto $s$.
Em todas as ações, $x$ e $y$ ($1 \le x,y \le 4$, $x \ne y$) são inteiros que indicam os jogadores; $s$ ($1 \le s \le 8$) é um inteiro de um dígito que corresponde a um conjunto/quarteto; e $k \in \{\mathrm{A},\mathrm{B},\mathrm{C},\mathrm{D}\}$ é um caractere que identifica as quatro cartas de um conjunto. Assim, as cartas $sk$ são rotuladas 1A, 1B, 1C, 1D, 2A, 2B, …, 8C, 8D. As quatro cartas com o mesmo primeiro dígito formam um conjunto.
A sequência dada descreve uma partida válida entre quatro jogadores. Isto é, exceto pelas duas formas possíveis de trapaça mencionadas, todas as ações cumprem todas as regras.
Saída
Se existir uma distribuição inicial possível das cartas tal que a sequência corresponda a uma partida (possivelmente parcial) em que todos seguem as regras, imprima yes. Caso contrário, imprima no e, na linha seguinte, o número da primeira ação após a qual é certo que algum jogador trapaceou. As ações são numeradas consecutivamente a partir de $1$; colocar quartetos de lado também conta como ação.
Exemplos
Entrada 1
4 1 A 2 3C no 2 A 3 3A yes 2 A 4 3D yes 2 A 1 3C no
Saída 1
no 4
Nota
Os jogadores $1$ e $2$ afirmam não ter 3C, e nenhum deles tinha 3A ou 3D. Portanto, um deles mentiu ao afirmar não ter 3C, ou pediu 3C sem ter 3B (a única carta restante do conjunto $3$).
Entrada 2
6 1 A 2 3C no 2 A 3 3A yes 2 A 4 3D yes 2 A 1 3B no 1 A 4 5B yes 1 Q 5
Saída 2
yes