В гостях у Марічки
Limits: 1 sec., 256 MiB
Марічка запросила Зеника до себе додому, щоб погодувати його, бо
переживає за його канапковий раціон. Вона приготувала йому декілька
страв і дозволила йому вибрати порядок в якому він буде їх їсти. Для
цього вона дала йому рядок \(s\), що
містить перші букви приготованих страв. Наприклад, зі стравами
spaghetti
і borsch
рядок \(s\) буде рівний sb
. Отже, аби
вибрати порядок страв, йому необхідно переставити букви в цьому
рядку.
Але в Зеника одні канапки на думці, тому він вирішив переставити
букви у такий спосіб, аби отримати якнайбільшу кількість підрядків
kanapka
. Його цікавить їх максимальна можлива кількість,
знайдіть це число.
Input
У першому рядку задано одне ціле число \(n\) — кількість страв, приготованих Марічкою.
У другому рядку задано рядок \(s\) довжиною \(n\) — перші букви приготованих страв.
Output
У єдиному рядку виведіть відповідь — максимальну кількість підрядків
kanapka
, яку можна отримати переставивши символи заданого
рядка.
Constraints
\(1 \le n \le 10^5\),
s складається виключно з малих літер англійського алфавіту,
5 балів — блок тестів в якому \(n \le 10\),
10 балів — блок тестів в яких рядки містять лише букви
k
, a
, n
, p
,
10 балів — блок тестів в якому \(n \le 10^5\).
Samples
Input (stdin) | Output (stdout) |
---|---|
10 akcnxapazk | 1 |
Input (stdin) | Output (stdout) |
---|---|
15 pkakvkcaapanank | 2 |
Notes
У другому прикладі переставивши букви можна отримати рядок
vkkanapkanapkac
.
Підрядки kanapka
:
vk
kanapka napkac
,
vkkanap
kanapka c
.
Submit a solution
Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
---|
Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
---|