Skrivaca
Ο Marin και ο Luka παίζουν ένα δημοφιλές παιδικό παιχνίδι που λέγεται κρυφτό (Skrivaca). Παίζουν στο σπίτι τους που έχει δωμάτια και ζεύγη δωματίων συνδέονται με μια πόρτα. Τα δωμάτια έχουν δείκτες από το έως το και για κάθε ζεύγος δωματίων υπάρχει ένα μονοπάτι από το ένα στο άλλο.
Ο Luka έχει σκεφτεί μια στρατηγική για να κρύβεται: όταν ο Marin μπαίνει στο δωμάτιο , ο Luka θα κρύβεται στο δωμάτιο . Στην αρχή του παιχνιδιού ο Marin διαλέγει το αρχικό του δωμάτιο και ο Luka κρύβεται στο δωμάτιο . Σε κάθε βήμα του παιχνιδιού, πρώτα ο Marin διαλέγει ένα δωμάτιο το οποίο είναι δίπλα από το τρέχων δωμάτιο και μπαίνει σε αυτό. Μετά, ο Luka ξέρει ότι ο Marin είναι στο δωμάτιο και σύμφωνα με την στρατηγική του κρύβεται στο δωμάτιο . Προσέξτε ότι ο Luka μπορεί να διαλέξει οποιοδήποτε μονοπάτι για να φτάσει στο δωμάτιο και σε ένα βήμα του παιχνιδιού μπορεί να περάσει μέσα από έναν αυθαίρετο αριθμό δωματίων.
Ο Marin θα βρει τον Luka όταν και οι δυο τους βρίσκονται στο ίδιο δωμάτιο και εκείνη τη στιγμή τελειώνει το παιχνίδι.
Ο Marin έμαθε για την στρατηγική που ακολουθεί ο Luka και θέλει να καθορίσετε για κάθε αρχικό δωμάτιο αν ο Marin μπορεί να βρει τον Luka σε έναν πεπερασμένο αριθμό βημάτων και αν μπορεί, καθορίστε τα λιγότερα απαιτούμενα βήματα αν και οι δυο παίξουν με τον βέλτιστο τρόπο. (Ο Marin παίζει έτσι ώστε να βρει τον Luka στον λιγότερο αριθμό βημάτων και ο Luka έτσι ώστε να τον βρει ο Martin στον μεγαλύτερο αριθμό βημάτων).
Είσοδος
Στην πρώτη γραμμή υπάρχουν οι ακέραιοι , ( , ( , \(\fraq{1}{2}\)), τον αριθμό των δωματίων και τον αριθμό από τα ζεύγη συνδεδεμένων δωματίων.
Στη δεύτερη γραμμή υπάρχουν ακέραιοι ( a_i\len~), που περιγράφουν τη στρατηγική του Luka.
Στην -οστη από τις επόμενες γραμμές υπάρχουν οι ακέραιοι , ( , , ), που δηλώνουν ότι το δωμάτιο και ενώνονται. Μεταξύ κάθε ζεύγους δωματίων θα υπάρχει το πολύ ,μια σύνδεση.
Έξοδος
Στην πρώτη και μοναδική γραμμή τυπώστε αριθμούς, όπου ο -οστος αριθμός δηλώνει τον μικρότερο αριθμό βημάτων που χρειάζεται ο Marin για να βρει τον Luka αν ο Marin ξεκινήσει στο δωμάτιο , ή αν ο Marin δεν μπορεί να βρει τον Luka.
Βαθμολογία
Υποπρόβλημα | Βαθμοί | Περιορισμοί |
1 | 15 | , |
2 | 25 | |
3 | 30 | Η στρατηγική του Luka θα είναι τέτοια ώστε δεν θα προσπαθήσει ποτέ να κρυφτεί στο δωμάτιο που βρίσκεται εκείνη τη στιγμή ο Marin ή σε κάποιο διπλανό του και η διάταξη του σπιτιού θα είναι τέτοια ώστε το παιχνίδι να μπορεί να τελειώσει στο πολύ διαφορετικά δωμάτια άσχετα από την στρατηγική του Luka |
4 | 40 | Κανένας επιπλέον περιορισμός. |
Παραδείγματα
input
4 4
3 4 1 2
1 2
2 3
3 4
4 1
output
-1 -1 -1 -1
input
8 9
2 3 2 1 6 5 6 7
1 2
1 3
2 4
3 4
4 5
4 6
6 7
5 7
4 8
output
1 2 2 2 1 1 1 1
Επεξήγηση του 2ου παραδείγματος:
Ο Marin μπαίνει στο δωμάτιο από το δωμάτιο στο πρώτο βήμα και στο δεύτερο πηγαίνει πίσω στο δωμάτιο . Ο Luka πρέπει να περάσει από το δωμάτιο για να πάει από το δωμάτιο στο δωμάτιο οπότε ο Marin μπορεί να βρει τον Luka σε βήματα.
input
9 8
1 9 1 1 1 9 9 9 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
output
0 1 1 2 1 1 2 1 1
Comments