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

G. Козак Вус та рядки

G. Козак Вус та рядки

Нещодавно Козак Вус натрапив на наступну задачу. Є рядок $s$. Треба знайти кількість підрядків цього рядка з такими властивостями: \begin{enumerate} \item Підрядок повинен мати принаймні $3$ літери; \item Усі літери підрядка однакові, за виключенням однієї. \end{enumerate} Наприклад, рядки \t{aab}, \t{cccdc} задовільняють цим властивостям, а рядки \t{ab}, \t{ccc}, \t{aabbaa} --- ні. Рядок $x$ є підрядком рядка $y$, якщо $x$ може бути отриманим видаленням кількох (можливо, жодного або всіх) символів з початку і декількох (можливо, жодного або всіх) символів з кінця. Допоможіть Козаку Вусу розв'язувати цю задачу. \InputFile Перший рядок містить рядок $s$ ($1 \le |s| \le 2 \cdot 10^5$), який складається з літер латинської абетки нижнього регістру. \OutputFile Виведіть єдине число --- кількість підрядків з заданими умовами. \Scoring Якщо рішення працює правильно при $|s| \le 100$, то воно буде оцінюватися принаймні у $15$ балів. Якщо рішення працює правильно при $|s| \le 5000$, то воно буде оцінюватися принаймні у $40$ балів.
Лимит времени 2 секунды
Лимит использования памяти 256 MiB
Входные данные #1
abcbb
Выходные данные #1
3
Входные данные #2
abacabadabacaba
Выходные данные #2
7
Входные данные #3
hello
Выходные данные #3
2
Входные данные #4
yyyyxyyyzttt
Выходные данные #4
21
Источник Ukrainian Olympiad in Informatics 2021, II Stage, I Round