COCI-11 (2010) - Γύρος #7 - 5 (Kuglice)

View as PDF

Submit solution

Points: 45 (partial)
Time limit: 1.0s
Memory limit: 32M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
Kuglice

Ο Mirko και ο Slavko λατρεύουν να παίζουν με τα βόλους. Σε μια συναρπαστική Παρασκευή, ο Mirko σκέφτηκε ένα παιχνίδι με βόλους το οποίο θέλει να δείξει στον Slavko.

Στο παιχνίδι, ο Mirko κατασκευάζει ένα κατευθυνόμενο γράφημα στο οποίο όλες οι κορυφές έχουν το πολύ ένα εξερχόμενο άκρο. Στη συνέχεια τοποθετεί έναν βόλο σε μια από τις κορυφές. Κάθε φορά που ένα μάρμαρο βρίσκεται σε κάποια κορυφή X, το μάρμαρο μετακινείται στη διπλανή κορυφή που συνδέεται με ένα μόνο άκρο, εάν υπάρχει. Η κίνηση του βόλου συνεχίζεται μέχρι να γίνει επίσκεψη σε μια κορυφή χωρίς εξερχόμενη άκρη, όπου ο βόλος σταματά. Είναι επίσης πιθανό ο βόλος να διασχίζει το γράφημα επ' αόριστον σε περίπτωση που δεν γίνει ποτέ επίσκεψη σε τέτοια κορυφή.

Για να βεβαιωθεί ότι ο Slavko κατανοεί τους κανόνες του παιχνιδιού, ο Mirko θα κάνει μια σειρά από ερωτήματα. Τα είδη των ερωτημάτων είναι τα εξής:

    1 X-εκτός αν ο βόλος κολλήσει σε βρόχο, σε ποια κορυφή θα σταματήσει αν τοποθετηθεί στην κορυφή X;

    2 X-διαγράψτε το εξερχόμενο άκρο της κορυφής X (είναι εγγυημένο ότι τέτοια ακμή θα υπάρχει πάντα)

Σημείωση: τα ερωτήματα εκτελούνται με τη σειρά και είναι αθροιστικά (το ένα επηρεάζει το άλλο).

Είσοδος

Η πρώτη γραμμή περιέχει έναν θετικό ακέραιο N\;(1 \leq N \leq 300\,000), τον αριθμό των κορυφών στο γράφημα.

Η δεύτερη γραμμή περιέχει ακριβώς N θετικούς ακέραιους που χωρίζονται από ένα μόνο διάστημα, όπου ο αριθμός στη θέση i υποδηλώνει τον δείκτη του προορισμού της εξερχόμενης ακμής από την κορυφή με δείκτη i. Η μηδενική τιμή αντιπροσωπεύει ότι δεν υπάρχει εξερχόμενη ακμή από την κορυφή με δείκτη i.

Η ακόλουθη γραμμή περιέχει έναν μόνο θετικό ακέραιο Q\;(1 \leq Q \leq 300\,000), τον αριθμό των ερωτημάτων.

Οι υπόλοιπες Q γραμμές περιέχουν ερωτήματα με τη μορφή που περιγράφεται παραπάνω.

Έξοδος

Για κάθε ερώτημα τύπου 1, τυπώνουμε τον δείκτη της κορυφής όπου σταματά ο βόλος, ένα ανά γραμμή, με τη σειρά εκτέλεσης των ερωτημάτων. Εάν ο βόλος δεν σταματά ποτέ, τυπώστε CIKLUS.

Παραδείγματα

input

3
2 3 1
7
1 1
1 2
2 1
1 2
1 1
2 2
1 2

output

CIKLUS
CIKLUS
1
1
2

input

5
0 3 5 3 4
6
1 1
1 2
2 4
1 2
2 3
1 2

output

1
CIKLUS
4
3

Comments

There are no comments at the moment.