eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Шахтарі

Шахтарі

На двох вугільних шахтах працюють шахтарі, продуктивність яких напряму залежить від різноманітності їжі, яку вони споживають. Їжа приходить на шахти коробками і буває трьох типів: м'ясо, риба і хліб (да-да, ви можете поностальгувати, якщо десять років назад грали у "Settlers II"). Коли на шахту приходить чегова коробка з їжею, шахтері добувають деяку кількість вугілля, яка залежить від вмісту цієї коробки, а також від двох попередніх коробок, які вони отримували (або менше ніж двох, якщо вони ствльки ще не отримали), наступним чином: \begin{itemize} \item Якщо всі ці три (або менше) коробки одного типу, вони добувають одну одиницю вугілля; \item Якщо серед цих трьох (або менше) коробок два типи їжі, вони добувають дві одиниці вугілля; \item Якщо серед цих трьох коробок всі три типи їжі, вони добувають три одиниці вугілля. \end{itemize} Вам наперед відомо, у якій послідовності коробки будуть поставлятись у шахтарське містечко. Ваше завдання --- розподілити цю послідовність по двох шахтах так, щоб сумарна кількість видобутого вугілля була максимальною. Коробки не можна "відкладувати на потім", а також ділити на частини: отримана коробка повинна бути тут же відправлена або на першу шахту, або на другу. Число коробок, які доставляються на кожну з шахт може бути довільним, навіть таким, що всі коробки можна відправити на одну шахту, якщо це вигідно для справи. (Доречі, якщо ви у майбутньому станете держ. службовцем, так вчиняти так як раз не потрібно!) \InputFile У першому рядку вхідного файлу міститься число \textbf{n} --- кількість коробок їжі (\textbf{1} ≤ \textbf{n} ≤ \textbf{100000}), у другому --- рядок довжини \textbf{n}, який складається з символів "\textbf{M}", "\textbf{F}" і "\textbf{B}", які позначають, відповідно, коробку з м'ясом, рибою і хлібом, і наведених у тому порядку, у якому коробки будуть поставлятись. \OutputFile Виведіть одне число --- максимальну кількість вугілля, яку зможуть видобути шахтарі при даних умовах.
Ліміт часу 1 секунда
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
6 
MBMFFB
Вихідні дані #1
12

Пояснення: У першому прикладі можна на кожну шахту доставити по одній коробці кожного типу (наприклад, першу, другу і четверту коробки відправити на одну шахту, інші — на другу), тоді на кожній шахті буде видобуто 1+2+3=6 одиниць вугілля.

Автор Михайло Дворкін
Джерело Зимова Школа, Харків 2011, День 3