ACM - Universidad Autonoma de Puebla |
El profesor de Rafael se ha percatado de que alguien le ha ayudado en sus tareas, así que habló con Rafael y le dio una última oportunidad para pasar la materia, esta vez con el siguiente problema:
Dado un conjunto S de inecuaciones de la forma “Var1 < Var2” ó “Var1 > Var2” hacer un programa que verifique si existen alguna contradicción dentro del conjunto.
Por ejemplo, si S = { A > B, B > C, D < C, B < D }, hay contradicción debido a que B no puede ser menor que D porque B > C y C > D.
Esta vez Rafael no te pide que le hagas su programa para que lo entregue como suyo, sino simplemente lo quiere utilizar como referencia para ver si el programa que él hace es correcto.En la primer línea recibirás un entero n (1 ≤ n ≤ 100) que indica el numero de casos de prueba. La entrada de cada caso consiste primero de una línea con numero t (1 ≤ t ≤ 200) que representa al tamaño del conjunto S, y en las siguientes t líneas las inecuaciones (una distinta por línea) de la forma “C1>C2” ó “C1<C2”, donde C1 y C2 son únicamente letras del abecedario.
Nota: Puede haber cero o más espacios entre las variables y el operador de desigualdad.
Por cada caso imprime el mensaje “YES” si hay contradicción dentro del conjunto S, “NO” en otro caso.
Ejemplo de entrada |
Ejemplo de salida |
---|---|
4 |
NO |