Trasladando Presos
Descripción
En el Reino OCI, la seguridad de la Cárcel IOI está estrictamente controlada. Hay habitaciones en la Cárcel IOI, numeradas del al . Hay pasajes que conectan las habitaciones. El pasadizo () conecta la habbitación y la habbitación bdireccionalmente. Es posible pasar de cualquier habbitación a cualquier otra pasando por varios pasillos.
En la cárcel IOI hay presos. Cada preso tiene un "número de identificación", que es un número entero entre y ambos inclusive. El dormitorio del preso () es la habbitación , y la sala de trabajo del preso es la habbitación . Un preso puede trabajar en el dormitorio de otro preso. Sin embargo, no hay dos presos que compartan el mismo dormitorio, ni dos reclusos que compartan la misma sala de trabajo.
Una mañana, los presos tienen que trasladarse de sus dormitorios a sus salas de trabajo. El Sr. PSN es el director de la cárcel IOI. Dará las siguientes instrucciones a los presos para que se trasladen.
La Dirección elige un prisionero y lo traslada de la sala actual a otra que esté conectada con la actual por un pasadizo. Para evitar la comunicación entre prisioneros, no está permitido trasladar al prisionero a una habitación en la que se encuentre otro prisionero.
Para poder empezar a trabajar lo antes posible, el Sr. PSN desea saber si es posible dar indicaciones para que cada preso no pase más de una vez por la misma habbitación (significa que cada preso toma el camino más corto).
Tarea
Escribe un programa que, dada la información de las habitaciones y los pasillos de la Cárcel de IOI y la información sobre los presos, determine si es posible mover a los presos de forma que cada uno de ellos tome el camino más corto.
Entrada
Un caso de prueba consta de escenarios, numerados de a . Para cada escenario se especifican los siguientes valores. Para conocer el rango de estos valores, consulte las Restricciones.
- El número de habitaciones de la cárcel IOI.
- Información sobre los pasillos de la cárcel IOI .
- Número de presos en la cárcel de IOI.
- Información sobre los dormitorios y las salas de trabajo de los presos .
El formato de los datos de entrada es el siguiente. Los valores dados son todos enteros.
(Entrada para el escenario 1)
(Entrada para el escenario 2)
...
(Entrada para el escenario )
El formato de los datos de entrada para cada escenario es el siguiente. Para más detalles, véase Ejemplo de entrada y salida.
...
...
Salida
Escribe líneas en la salida estándar. La línea k-ésima () debe contener lo siguiente.
- Yes si es posible mover a los prisioneros para el escenario .
- No si no es posible mover a los prisioneros para el escenario .
Restricciones
- .
- .
- ().
- .
- ().
- ().
- son diferentes entre sí.
- son diferentes entre sí.
- ≠ ().
- Es posible pasar de cualquier habbitación a otra pasando por varios pasillos.
- La suma de para los escenarios es menor o igual a .
Subtareas
- (5 puntos) ().
- (5 puntos) , , .
- (16 puntos) , , .
- (28 puntos) , , .
- (12 puntos) , .
- (11 puntos) Es posible pasar de cualquier habbitación a cualquier otra habbitación atravesando como máximo pasillos.
- (23 puntos) No hay restricciones adicionales.
Ejempo de Entrada y salida
Ejmplo de Entrada #1
1
8
1 2
2 3
3 4
4 5
5 6
6 7
7 8
2
3 4
4 8
Ejemplo de Salida #1
Yes
Para esta entrada de ejemplo, si el director da las siguientes instrucciones, es posible mover a los prisioneros de modo que cada prisionero tome el camino más corto.
- Mueve al prisionero 2 de la habbitación 4 a la habbitación 5.
- Mueve al prisionero 1 de la habbitación 3 a la habbitación 4.
- Mueva al prisionero 2 de la habbitación 5 a la habbitación 6.
- Mueva al prisionero 2 de la habbitación 6 a la habbitación 7.
- Mueva al prisionero 2 de la habbitación 7 a la habbitación 8.
Por lo tanto, salida es Yes (Sí). La estructura de la cárcel para esta entrada de ejemplo es la siguiente.
Esta entrada de ejemplo satisface las restricciones de todas las subtareas.
Ejmplo de Entrada #2
2
7
1 2
2 3
3 4
4 5
3 6
6 7
2
4 1
5 7
4
1 2
1 3
1 4
3
2 3
3 4
4 2
Ejemplo de Salida #2
Yes
No
Hay escenarios. Para el Escenario 1, si el director da las siguientes instrucciones, es posible mover los prisioneros de modo que cada prisionero tome el camino más corto.
- Mover al prisionero 1 de la habbitación 4 a la habbitación 3.
- Mueve al prisionero 1 de la habbitación 3 a la habbitación 2.
- Mueva al prisionero 2 de la habbitación 5 a la habbitación 4.
- Mueva al prisionero 2 de la habbitación 4 a la habbitación 3.
- Mueva al prisionero 2 de la habbitación 3 a la habbitación 6.
- Mueva al prisionero 1 de la habbitación 2 a la habbitación 1.
- Mueva al prisionero 2 de la habbitación 6 a la habbitación 7.
Sin embargo, para el Escenario 2, no es posible mover a los prisioneros de forma que cada uno de ellos tome el camino más corto.
Por lo tanto, la primera línea de salida debe ser Yes, y la segunda línea de salida debe ser No.
Este ejemplo de entrada satisface las restricciones de las subtareas .
Ejmplo de Entrada #3
3
3
1 2
2 3
2
2 1
3 2
7
1 2
2 3
3 4
4 5
5 6
6 7
3
1 3
4 2
2 5
8
1 2
2 3
3 4
4 5
5 6
6 7
7 8
4
1 5
2 6
3 7
4 8
Ejemplo de Salida #3
Yes
No
Yes
Este ejemplo de entrada satisface las restricciones de las subtareas .
Comments
Los que han hechos envíos pueden volver a enviar, ya que había una subtarea con un punto de más.