Task Palindromi
Σας δίνεται μια ακολουθία χαρακτήρων 0 ή 1, με δείκτες αριθμούς . Αρχικά κάθε χαρακτήρας αντιπροσωπεύει μια συμβολοσειρά μήκους ένα. Κατά τη διάρκεια μιας συνένωσης επιλέγονται δύο λέξεις και , διαγράφονται και αντικαθίσταται από τη συμβολοσειρά έτσι ώστε οι χαρακτήρες του να γράφονται μετά τους χαρακτήρες του .
Οι αρχικές συμβολοσειρές ενώνονται σε μια τελική συμβολοσειρά χρησιμοποιώντας μια ακολουθία συνενώσεων. Η -οστή από αυτές τις συνενώσεις περιγράφεται από ένα ζεύγος δεικτών , που δηλώνει ότι η συμβολοσειρά που περιέχει τον -οστό χαρακτήρα και η συμβολοσειρά που περιέχει τον -οστό χαρακτήρα πρέπει να συνενωθούν. Είναι εγγυημένο ότι χαρακτήρες με δείκτες και δεν βρίσκονται στην ίδια συμβολοσειρά.
Η παλινδρομική τιμή κάποιας συμβολοσειράς ορίζεται ως ο συνολικός αριθμός των μοναδικών υποσυμβολοσειρών του που είναι παλίνδρομες. Ορίζουμε ως παλίνδρομα τις συμβολοσειρές που είναι ίδιες όταν διαβάζονται από αριστερά προς τα δεξιά και από τα δεξιά προς τα αριστερά. Μια υποσυμβολοσειρά μιας συμβολοσειράς ορίζεται ως μια συμβολοσειρά που λαμβάνεται διαγράφοντας μηδέν ή περισσότερων χαρακτήρων από την αρχή ή/και τέλος της συμβολοσειράς.
Για κάθε συνένωση εκτυπώστε την παλινδρομική τιμή της συμβολοσειράς που προκύπτει.
Είσοδος
Η πρώτη γραμμή περιέχει έναν ακέραιο , που είναι ο αριθμός των χαρακτήρων.
Στη δεύτερη γραμμή υπάρχει μια συμβολοσειρά με χαρακτήρες 0 και 1 που αντιπροσωπεύουν τις αρχικές συμβολοσειρές.
Το i-οστό των παρακάτω γραμμών περιέχει δύο ακέραιους αριθμούς και που αντιπροσωπεύει την -οστή αλληλουχία.
Έξοδος
Εκτυπώστε γραμμές, τις παλινδρομικές τιμές των λέξεων που λαμβάνονται μετά από κάθε συνένωση.
Βαθμολογία
Υποπρόβλημα | Βαθμοί | Περιορισμοί |
1 | 10 | . |
2 | 20 | . |
3 | 30 | για όλα τα . |
4 | 50 | Κανένας επιπλέον περιορισμός. |
Παραδείγματα
input
3
010
1 2
2 3
output
2
3
input
5
00111
4 1
1 5
2 1
3 1
output
2
3
4
5
input
8
10010000
7 5
4 2
3 6
1 3
6 8
5 3
1 2
output
2
2
2
3
4
6
8
Επεξήγηση του τρίτου παραδείγματος:
Οι συμβολοσειρές που δημιουργήθηκαν πρόσφατα μετά από κάθε συνένωση είναι: και . Οι αντίστοιχες παλινδρομικές τιμές δίνονται στην έξοδο του παραδείγματος. Π.χ. η παλινδρομική τιμή του είναι 8 επειδή η συμβολοσειρά περιέχει 8 παλίνδρομες υποσυμβολοσειρές: και .
Comments