V miestnom útulku funguje adopcia psíkov1 trochu zvláštne. Ľudia aj psíkovia sa postavia do radu. Vždy keď susedí človek s nejakým psíkom, tak sa môže rozhodnúť, že si ho adoptuje. Toto sa opakuje, pokiaľ sa to dá. Majiteľa útulku by ale zaujímalo, koľko najmenej smutných psíkov a ľudí vie ostať na konci dňa. Viete mu s tým pomôcť?
Úloha
Na vstupe dostanete postupnosť znakov P
a
C
. Vždy, keď sa v postupnosti vedľa seba nachádza
P
a C
, tak ich môžeme vymazať. Toto opakujeme
pokiaľ to ide. Koľko najmenej znakov nám vie ostať na konci?
Formát vstupu
Na prvom riadku je celé číslo \(N\)
(\(1 \leq N \leq 10^6\)). Na druhom
riadku je reťazec dĺžky \(N\)
pozostávajúci z písmen P
a C
.
Sada | 1 | 2 | 3 | 4 |
---|---|---|---|---|
\(1 \leq N \leq\) | \(100\) | \(10'000\) | \(10^6\) | \(10^6\) |
Formát výstupu
Vypíšte jeden riadok a v ňom jedno celé číslo, ktoré je minimálny počet znakov, ktoré vedia ostať na konci.
Príklady
Input:
2
PC
Output:
0
Prvý človek si adoptuje prvého psa.
Input:
4
CCPP
Output:
0
Najprv si adoptuje vnútorný človek vnútorného psa a následne vonkajší človek bude susediť s vonkajším psom, čiže si ho môže adoptovať.
Input:
3
PCP
Output:
1
Jednému človeku sa bohužiaľ neujde žiaden psík na adoptovanie.
V prípade záujmu o adopciu alebo podporu sa môžete obrátiť na Slobodu zvierat alebo na Váš miestny útulok.↩︎
Odovzdávanie
Na odovzdávanie sa musíš prihlásiť
Otázky a diskusia
Po skončení kola budete mať príležitosť na diskutovanie o riešeniach v diskusii pod vzorovým riešením.