COI-12 (2012) - 4 (Trampolin)

View as PDF

Submit solution

Points: 50 (partial)
Time limit: 0.5s
Memory limit: 256M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
Trampolin

Υπάρχουν πολλοί υπερήρωες εκεί έξω: ο Batman, ο Spiderman,ο Superman,ο Icantwriteman κτλπ. Ανάμεσα σε αυτούς υπάρχει ένας άλλος κύριος που ονομάζεται Kickass. Σήμερα θέλει να αντιγράψει τον Spiderman, έτσι έχει διαλέξει μια σειρά από ψηλούς ουρανοξύστες για να πηδήξει πάνω τους.
Συγκεκριμένα, έχει επιλέξει μια ακολουθία N ουρανοξυστών αριθμημένους από το 1 εώς το \(Ν\) από αριστερά στα δεξιά. Αρχικά βρίσκεται στον K-οστό ουρανοξύστη. Δυστυχώς, ο Kickass έχει περιορισμένες δυνάμεις, και μπορεί έτσι να πηδήξει μόνο σε έναν γειτονικό ουρανοξύστη είτε στα αριστερά είτε στα δεξιά, και μόνο αν το ύψος αυτού του ουρανοξύστη δεν έιναι μεγαλύτερο από το ύψος του ουρανοξύστη στον οποίο βισκεται τώρα. Παρ'όλα αυτά, επειδή το περίμενε αυτό και μη θέλοντας να δείξει αδύναμος, τοποθέτησε τραμπολίνα πάνω σε κάποιους ουρανοξύστες, και από αυτούς τους ουρανοξύστες μπορεί να πηδήξει σε οποιοδήποτε άλλο ουρανοξύστη, ανεξάρητα από το που ή το πόσο ψηλός είναι αυτός ο ουρανοξύστης.
Βρες τον μέγιστο αριθμό διαφορετικών ουρανοξυστών ο Kickass μπορεί να επισκεφτεί με μια σειρά πηδημάτων ξεκινώντας από τον ουρανοξύστη αριθμημένο K. Αν επισκεφθει έναν ουρανοξύστη πάνω από μια φορά, και πάλι τον μετράμε μόνο μία. Επίσης ο ουρανοξύστης K μετριέται ακόμα και αν δεν τον ξαναεπισκεφθούμε.

Είσοδος

Η πωτη γραμμή εισόδου περιέχει δύο ακεραίους N και K (3\le N \le 300\,000,\,1 \le K \le N), τον συνολικό αριθμό ουρανοξυστών και του αρχικού ουρανοξύστη, αντίστοιχα.
Η δέυτερη γραμμή εισόδου περιέχει N ακέραιους μικρότερους από 10^6, τα ύψη των ουρανοξυστών από τα αριστερά στα δεξιά.
Η τρίτη γραμμή εισόδου περιέχει μια ακολουθία N χαρακτήρων '.' ή 'T'. Αν ο i-οστός χαρακηρας είναι 'T', τότε υπάρχει ένα τραμπολίνο πάνω απο τον ουρανοξύστη i.

Έξοδος

Η πρώτη και μοναδική γραμμή εξόδου πρέπει να περιέχει τον απαιτούμενο μέγιστο αριθμό επισκέψεων ουρανοξυστών.

Παραδείγματα

input

6 4
12 16 16 16 14 14
.T....

output

5

input

10 1
10 7 3 1 1 9 8 2 4 10
..T..T....

output

7
Επεξήγηση του 2ου παραδείγματος

Η ακολουθία των επισκέψεων ουρανοξυστών θα μπορούσε να είναι η εξής:
1 -> 2 -> 3 -> 6 -> 10 -> 9 -> 8.


Comments

There are no comments at the moment.