Padel Prize Pursuit
Υπάρχουν συμμετέχοντες με αριθμούς από έως που διαγωνίζονται σε ένα τουρνουά padel, το οποίο διεξάγεται σε ημέρες. Κάθε μέρα διεξάγεται ακριβώς ένας αγώνας. Στο τουρνουά απονέμονται μετάλλια, ένα νέο για κάθε αγώνα. Στον αγώνα της ημέρας , οι δύο συμμετέχοντες με αριθμό και συμμετέχουν. Στον αγώνα συμβαίνουν τα εξής:
- Ο συμμετέχων κερδίζει τον συμμετέχοντα
- Ένα νέο μετάλλιο δίνεται στον νικητή
- Όλα τα τρέχοντα μετάλλια του ηττημένου δίνονται στον νικητή.
Την ημέρα (την επομένη του τελευταίου αγώνα) πραγματοποιείται η τελετή απονομής των βραβείων. Κατά την τελετή, όλα τα μετάλλια συγκεντρώνονται και στη συνέχεια κάθε μετάλλιο δίνεται στον συμμετέχοντα που κράτησε το μετάλλιο αυτό για μεγαλύτερο χρονικό διάστημα.
Τυπικά, το μετάλλιο δίνεται στον συμμετέχοντα που κατείχε το μετάλλιο για τις περισσότερες νύχτες (όχι απαραίτητα συνεχόμενες), από την ημέρα . Εάν δύο ή περισσότεροι συμμετέχοντες έχουν κρατήσει ένα μετάλλιο για τον ίδιο αριθμό νυχτών, το μετάλλιο δίνεται στον συμμετέχοντα με τον μικρότερο δείκτη (index).
Στόχος σας είναι να προσδιορίσετε πόσα μετάλλια απονέμονται σε κάθε συμμετέχοντα κατά την τελετή απονομής των βραβείων.
Είσοδος
Η πρώτη γραμμή εισόδου περιέχει τους ακέραιους αριθμούς και , τον αριθμό των συμμετεχόντων και τον αριθμό των αγώνων.
Στη συνέχεια ακολουθούν γραμμές. Η -οστή από αυτές τις γραμμές περιέχει δύο ακέραιους και , τους συμμετέχοντες που διαγωνίζονται την ημέρα , όπου ο συμμετέχων κερδίζει τον συμμετέχοντα .
Έξοδος
Στη μοναδική γραμμή εξόδου εκτυπώστε ακέραιους αριθμούς, ο -οστός αριθμός αντιπροσωπεύει τον αριθμό των μεταλλίων που έχει ο συμμετέχων μετά την τελετή απονομής των βραβείων.
Περιορισμοί
- και (για όλα τα ).
Η λύση σας θα δοκιμαστεί σε ένα σύνολο ομάδων δοκιμών, καθεμία από τις οποίες αξίζει έναν αριθμό βαθμών. Κάθε ομάδα δοκιμών περιέχει ένα σύνολο δοκιμαστικών περιπτώσεων. Για να λάβετε τους πόντους για μια ομάδα δοκιμών πρέπει να λύσετε όλες τις δοκιμαστικές περιπτώσεις της ομάδας.
Η λύση σας θα δοκιμαστεί σε ένα σύνολο ομάδων δοκιμών, καθεμία από τις οποίες αξίζει έναν αριθμό βαθμών. Κάθε ομάδα δοκιμών περιέχει ένα σύνολο περιπτώσεων δοκιμών. Για να λάβετε τους πόντους για μια ομάδα δοκιμών πρέπει να λύσετε όλες τις περιπτώσεις δοκιμών στην ομάδα δοκιμών.
Βαθμολογία
Υποπρόβλημα | Βαθμοί | Περιορισμοί |
1 | 12 | |
2 | 16 | |
3 | 15 | Ο νικητής του -οστού αγώνα συμμετέχει στον ()-οστό αγώνα, για κάθε , έτσι ώστε . |
4 | 20 | Τη στιγμή του -οστού αγώνα, ο έχει τουλάχιστον τόσα μετάλλια όσα και ο , για κάθε έτσι ώστε \le i \le M - 1~. |
5 | 22 | Μόλις ένας συμμετέχων χάσει, δεν ξαναπαίρνει μέρος σε αγώνα. |
6 | 15 | Κανένας επιπλέον περιορισμός. |
Παραδείγματα
input
3 4
0 1
2 1
1 0
2 1
output
1 1 2
Επεξήγηση του 1ου παραδείγματος:
Για την πρώτη περίπτωση δοκιμής, η ακόλουθη εικόνα δείχνει ποιος είχε ποια μετάλλια καθ' όλη τη διάρκεια του τουρνουά. Όταν ο συμμετέχων χάνει την η ημέρα, όλα τα μετάλλιά του δίνονται στον συμμετέχοντα .
///ΕΙΚΟΝΑ///
input
3 7
0 1
0 2
2 0
0 1
1 0
2 0
0 2
output
2 2 3
Επεξήγηση του 2ου παραδείγματος:
Το δεύτερο παράδειγμα μπορείτε να το δείτε παρακάτω.
///ΕΙΚΟΝΑ///
Μετά την τελετή απονομής των βραβείων, στον συμμετέχοντα δίνονται τα μετάλλια και , στον συμμετέχοντα δίνονται τα μετάλλια και και στον συμμετέχοντα δίνονται τα μετάλλια , και .
input
6 10
2 5
3 0
4 2
0 1
4 3
2 4
0 3
0 2
5 2
5 0
output
5 0 1 1 1 2
Comments