Paradoks
Ένα βράδυ με πανσέληνο, όταν το ρολόι σήμανε μεσάνυχτα, πέντε φίλοι ήταν έτοιμοι να παίξουν ένα παιχνίδι τόσο μυστηριώδες όσο και εκείνη η νύχτα.
Κάθισαν σε έναν κύκλο, σε σειρά της φοράς των δεικτών του ρολογιού: ο Ίγκορ, η Λία, ο Μαρίνο, η Σόνια και ο Βίκτορ. Το παιχνίδι αποτελείται από γύρους. Τον πρώτο γύρο τον ξεκινά η Σόνια, και κάθε επόμενος γύρος ξεκινά από τον νικητή του προηγούμενου γύρου.
Κάθε παίκτης κρατά κάρτες στο χέρι του. Όλες οι κάρτες είναι άχρωμες και φέρουν έναν φυσικό αριθμό από το έως το . Όταν ένας παίκτης παίζει μία κάρτα, επιλέγει το χρώμα της κάρτας αυτής. Μπορεί να επιλέξει ένα από τα τέσσερα χρώματα (κόκκινο, μπλε, κίτρινο, πράσινο) υπό την προϋπόθεση ότι μια τέτοια κάρτα (συνδυασμός του αριθμού και του χρώματος) δεν έχει ήδη παιχτεί στο παιχνίδι. Στο υπόλοιπο κείμενο, για παράδειγμα ο όρος "παίζοντας μία μπλε κάρτα,", θα αναφέρεται στη διαδικασία του να παίξει κανείς την κάρτα και να τη δηλώσει ως μπλε.
Σε κάθε γύρο, οι παίκτες, με σειρά κατά τη φορά των δεικτών του ρολογιού, παίζουν μία κάρτα ο καθένας μέχρι να φτάσει η σειρά στον παίκτη που ξεκίνησε τον γύρο, δηλαδή μέχρι να παίξουν όλοι από μία κάρτα. Η πρώτη κάρτα που παίζεται σε έναν γύρο καθορίζει το λεγόμενο χρώμα του γύρου, και όλοι οι επόμενοι παίκτες υποχρεούνται να παίξουν κάρτες αυτού του χρώματος. Αν κάποιος παίκτης δεν παίξει κάρτα του τρέχοντος χρώματος του γύρου, θεωρείται ότι δεν έχει κάρτα αυτού του χρώματος στο χέρι του - και του απαγορεύεται να παίξει κάρτες αυτού του χρώματος για το υπόλοιπο του παιχνιδιού.
Ο νικητής κάθε γύρου είναι:
- Το άτομο που έπαιξε την κόκκινη κάρτα με τον μεγαλύτερο αριθμό.
- Αν δεν παίχτηκαν κόκκινες κάρτες, το άτομο που έπαιξε την κάρτα με τον μεγαλύτερο αριθμό στο χρώμα του γύρου.
Μερικές φορές, οι παίκτες κάνουν μια κίνηση που δεν θα έπρεπε: είτε παίζουν μια κάρτα που έχει ήδη παιχτεί, είτε παίζουν μια κάρτα με χρώμα που προηγουμένως δήλωσαν ότι δεν έχουν πλέον. Αυτή η κίνηση ονομάζεται παράδοξο (στα Κροατικά: "paradoks"). Όταν συμβεί ένα παράδοξο, η κίνηση αγνοείται εντελώς στον υπολογισμό του νικητή του γύρου και για το υπόλοιπο παιχνίδι. Για παράδειγμα, αν μια κάρτα παιχτεί για πρώτη φορά ως παράδοξο, για το υπόλοιπο παιχνίδι θεωρείται σαν να μην έχει παιχτεί ακόμα. Είναι εγγυημένο ότι ο πρώτος παίκτης σε έναν γύρο δεν θα παίξει ποτέ ένα παράδοξο σε αυτόν τον γύρο.
Οι ήρωές μας έχουν να ειδωθούν για πολύ καιρό και δεν προσέχουν ιδιαίτερα το παιχνίδι, οπότε ζητούν τη βοήθειά σας. Γράψτε ένα πρόγραμμα που, για τις κάρτες που παίζονται διαδοχικά ανά γύρο, τυπώνει πόσα παράδοξα συνέβησαν και τα παραθέτει με τη σειρά που εμφανίστηκαν. Για κάθε παράδοξο, εκτυπώστε τον γύρο στον οποίο συνέβη και τον παίκτη που το προκάλεσε.
Είσοδος
Η πρώτη γραμμή της εισόδου περιέχει έναν φυσικό αριθμό , τον αριθμό των γύρων.
Στις επόμενες γραμμές της εισόδου, υπάρχουν λέξεις, καθεμία από τις οποίες έχει μήκος χαρακτήρες, που αναπαριστούν τις κάρτες που παίχτηκαν σε αυτόν τον γύρο, με τη σειρά που παίχτηκαν. (Προσοχή: ο πρώτος παίκτης σε κάθε γύρο δεν είναι απαραίτητα ο ίδιος.)
Ο πρώτος χαρακτήρας κάθε λέξης αναπαριστά το χρώμα της κάρτας που έπαιξε ο παίκτης και θα είναι ένα από τα παρακάτω γράμματα: '' - κόκκινο, '' - μπλε, '' - κίτρινο, '' - πράσινο. Ο δεύτερος χαρακτήρας κάθε λέξης θα είναι ένας φυσικός αριθμός μεταξύ και (συμπεριλαμβανομένων), που αναπαριστά τον αριθμό πάνω στην κάρτα.
Για παράδειγμα, η λέξη '' αναπαριστά μια κίτρινη κάρτα με αριθμό .
Έξοδος
Εκτυπώστε έναν αριθμό , τον αριθμό των παραδόξων που συνέβησαν.
Στις επόμενες γραμμές, για καθένα από τα παράδοξα, εκτυπώστε τον αριθμό του γύρου και το όνομα του παίκτη που το προκάλεσε, με κεφαλαία γράμματα.
Τα παράδοξα πρέπει να εκτυπώνονται με τη σειρά που συνέβησαν.
Βαθμολογία
Υποπρόβλημα | Βαθμοί | Περιορισμοί |
Η Σόνια θα είναι η νικήτρια όλων των γύρων, και όλα τα παράδοξα θα συμβούν λόγω επανάληψης μιας κάρτας που έχει ήδη παιχτεί. | ||
Όλα τα παράδοξα που θα συμβούν θα προκληθούν από την επανάληψη μιας κάρτας που έχει ήδη παιχτεί. | ||
Κανένας επιπλέον περιορισμός |
Παραδείγματα
1ο
input
4
Y5 Z3 Y6 C2 Y1
Z4 Z7 Z2 Y2 P3
Z6 Z7 Z1 Y2 C2
P6 P8 P8 Z7 Y9
output
6
2 VIKTOR
3 SONJA
3 LEA
4 VIKTOR
4 IGOR
4 LEA
Επεξήγηση του πρώτου παραδείγματος:
Η εξέλιξη του παιχνιδιού εμφανίζεται στην εικόνα παρακάτω.
Στον πρώτο γύρο, ο Βίκτορ και η Λέα δεν έπαιξαν κίτρινες κάρτες (το χρώμα του γύρου), οπότε θεωρείται ότι δεν έχουν άλλες κίτρινες κάρτες στα χέρια τους και τους απαγορεύεται να δηλώσουν οποιαδήποτε κάρτα ως κίτρινη για το υπόλοιπο παιχνίδι. Αυτός είναι ο λόγος για το παράδοξο του Βίκτορ στον δεύτερο γύρο και για το παράδοξο της Λία στον τελευταίο γύρο.
Παρατηρείστε: ότι στον δεύτερο γύρο, λόγω του παραδόξου, η κίνηση του Βίκτορ αγνοείται, και δεν βγάζουμε περαιτέρω συμπεράσματα. Επίσης, η κάρτα δεν θεωρείται παιγμένη, γι' αυτό και ο Ίγκορ δεν προκαλεί παράδοξο παίζοντας αυτή την κάρτα στον τρίτο γύρο.
Όλα τα παράδοξα στους γύρους και (εκτός από το τελευταίο) συνέβησαν επειδή παίχτηκε μια κάρτα που είχε ήδη παιχτεί νωρίτερα στο παιχνίδι.
2ο
input
3
P1 Y9 Z5 Y1 Z5
P5 Y7 Z3 Y8 P1
C6 Y8 P5 Z1 Z8
output
4
1 MARINO
2 MARINO
3 VIKTOR
3 IGOR
3ο
input
1
Y4 P9 Y8 Z5 Z3
output
0
Comments