[583A] Asfaltando caminos
tiempo límite por test | 1 segundo |
memoria límite por test | 256 MB |
entrada | entrada estándar |
salida | salida estándar |
La ciudad X consiste de caminos infinitos en vertical y en horizontal, formando intersecciones. Los caminos (tanto los verticales como los horizontales) están numerados de 1 a , y las intersecciones se indican por los números de los caminos que las forman.
Los caminos de tierra hace mucho que se consideran obsoletos, así que se tomó la decisión de asfaltarlos. Para hacer esto, se contrató a un equipo de obreros y se elaboró una agenda de trabajo, de acuerdo a qué intersecciones se deberían asfaltar.
Las reparaciones de los caminos están planeadas para días. En el i-ésimo día el equipo llega a la i-ésima intersección de la lista y si ninguno de los dos caminos que la forman está alfaltado, entonces asfaltan ambos caminos. En cualquier otro caso, el equipo deja la intersección, sin hacer nada con los caminos.
De acuerdo a lo que dice la agenda de caminos a trabajar ¿en qué días se asfaltará al menos un camino?
Entrada
La primera línea contiene un entero () - el número de caminos verticales y horizontales en la ciudad.
Las siguientes líneas contienen el orden de las intersecciones en la agenda. Cada i-ésima línea cuenta con dos números (), separados con un espacio, que dicen que la i-ésima intersección de la agenda está formada por el -ésimo camino horizontal y el -ésimo vertical. Se garantiza que todas las intersecciones dadas son distintas.
Salida
En una línea imprime en orden ascendente los números de los días en los que habrá progreso en la reparación de los caminos. Los días están numerados empezando de 1.
Ejemplos
input:
2
1 1
1 2
2 1
2 2
output:
1 4
input:
1
1 1
output:
1
Nota
En el primer ejemplo la brigada actúa de esta forma:
El primer día la brigada llega a la intersección formada por el primer camino horizontal y el primer camino vertical. Como ninguno de los caminos ha sido asfaltado, los trabajadores asfaltan ambos.
El segundo día la brigada llega a la intersección entre el primer camino horizontal y el segundo camino vertical. El segundo camino vertical aún no ha sido asfaltado, pero como el primer camino horizontal ya fue asfaltado el primer día, los trabajadores se van y no asfaltan nada.
El tercer día la brigada llega a la intersección entre el segundo camino horzontal y el primer camino vertical. Si bien el segundo camino horizontal aún no está asfaltado, el primer camino vertical sí, y por lo tanto, los trabajadores dejan la intersección sin asfaltar nada.
El cuarto día la brigada llega a la intersección formada por la intersección entre el segundo camino horizontal y vertical. Como ninguno ha sido asfaltado, los trabajadores asfaltan ambos caminos.