Wait Time
Ανταλλάσσετε γραπτά μηνύματα με τους φίλους σας. Αφού λαμβάνετε πολλά μηνύματα, θέλετε να μετρήσετε πόσο χρόνο χρειάζεται να περιμένουν οι φίλοι σας για τις απαντήσεις σας.
Η συσκευή σας καταγράφει κάθε ληφθέν και αποσταλθέν μήνυμα με τη σειρά χρησιμοποιώντας τα εξής δύο είδη καταχωρήσεων:
- υποδεικνύει ότι ένα μήνυμα ελήφθη από έναν φίλο με τον αριθμό ,
- υποδεικνύει ότι ένα μήνυμα στάλθηκε σε έναν φίλο με αριθμό .
Η συσκευή σας στέλνει και λαμβάνει μηνύματα αστραπιαία και για κάθε διαδοχικό ζεύγος καταχωρίσεων που περιγράφονται παραπάνω, είτε
- καταγράφεται μια καταχώρηση μεταξύ τους που υποδεικνύει ότι απέχουν δευτερόλεπτα μεταξύ τους, ή
- δεν υπάρχει καμία καταχώρηση ανάμεσά τους και απέχουν μεταξύ τους ένα δευτερόλεπτο.
Ακολουθούνται πάντα διάφοροι κανόνες για την επικοινωνία αυτή:
- τα μόνα μηνύματα που στέλνετε είναι απαντήσεις σε μηνύματα που έχετε λάβει,
- στέλνετε το πολύ μία απάντηση σε οποιοδήποτε μήνυμα από οποιονδήποτε φίλο,
- οι φίλοι σας δεν στέλνουν επόμενο μήνυμα μέχρι να απαντήσετε στο προηγούμενο μήνυμά τους.
Ο χρόνος αναμονής για ένα μήνυμα είναι ο χρόνος που μεσολαβεί από τη στιγμή που το λαμβάνετε μέχρι τη στιγμή που απαντάτε σε αυτό. Αν ένας φίλος έλαβε απάντηση σε κάθε μήνυμα που έστειλε, ο συνολικός χρόνος αναμονής για τον φίλο είναι το άθροισμα όλων των χρόνων αναμονής για όλα τα μηνύματα από τον φίλο . Διαφορετικά, ο συνολικός χρόνος αναμονής για τον φίλο είναι .
Η δική σας δουλειά είναι να προσδιορίσετε το συνολικό χρόνο αναμονής για κάθε φίλο.
Είσοδος
Η είσοδος αποτελείται από έναν ακέραιο αριθμό , ακολουθούμενο από γραμμές, όπου κάθε γραμμή περιέχει έναν χαρακτήρα (, ή ), ακολουθούμενο από ένα κενό, ακολουθούμενο από έναν ακέραιο αριθμό . Αυτές οι γραμμές είναι οι καταχωρίσεις που περιγράφονται παραπάνω (στη σειρά).
Έξοδος
Εξάγετε μία γραμμή για κάθε φίλο που έστειλε μήνυμα της μορφής όπου είναι ένας αριθμός φίλου και είναι ο συνολικός χρόνος αναμονής για τον φίλο . Οι γραμμές είναι κατά αύξουσα σειρά του αριθμού των φίλων.
Παραδείγματα
input
5
R 2
R 3
W 5
S 2
S 3
output
2 6
3 6
Επεξήγηση του πρώτου παραδείγματος:
Ο φίλος στέλνει ένα μήνυμα σε χρόνο και ο φίλος στέλνει ένα μήνυμα σε χρόνο . Ο φίλος λαμβάνει απάντηση σε χρόνο και ο φίλος λαμβάνει απάντηση σε χρόνο .
input
14
R 12
W 2
R 23
W 3
R 45
S 45
R 45
S 23
R 23
W 2
S 23
R 34
S 12
S 34
output
12 13
23 8
34 2
45 -1
Επεξήγηση του δεύτερου παραδείγματος:
Για τον φίλο , ένα μήνυμα λαμβάνεται σε χρόνο και απαντάται σε χρόνο . Για τον φίλο , ανταλλάσσονται δύο μηνύματα, με το πρώτο μήνυμα να έχει χρόνο αναμονής δευτερόλεπτα και το δεύτερο μήνυμα να έχει χρόνο αναμονής δευτερόλεπτα. Για τον φίλο , ένα μήνυμα λαμβάνεται σε χρόνο και απαντάται σε χρόνο . Ο φίλος στέλνει ένα μήνυμα το οποίο δεν απαντάται ποτέ.
Comments