Codeforces Round 590 (Div. 3) |
---|
Закончено |
Вам задана строка $$$s$$$, состоящая только из первых $$$20$$$ строчных букв латинского алфавита ('a', 'b', ..., 't').
Напомним, что подстрокой $$$s[l; r]$$$ строки $$$s$$$ называется строка $$$s_l s_{l + 1} \dots s_r$$$. Например, подстроками «codeforces» являются «code», «force», «f», «for», но не строки «coder» и «top».
Вы можете произвести следующую операцию не более одного раза: выбрать какую-то подстроку $$$s[l; r]$$$ и развернуть ее (то есть строка $$$s_l s_{l + 1} \dots s_r$$$ превращается в $$$s_r s_{r - 1} \dots s_l$$$).
Ваша задача — максимизировать длину максимальной подстроки $$$s$$$, состоящей из различных (то есть уникальных) символов.
Строка состоит из различных символов, если ни один символ этой строки не встречается более одного раза. Например, строки «abcde», «arctg» и «minecraft» состоят из различных символов, а строки «codeforces», «abacaba» не состоят из различных символов.
Единственная строка входных данных содержит одну строку $$$s$$$, состоящую из не более, чем $$$10^6$$$ символов 'a', 'b', ..., 't' (первых $$$20$$$ строчных букв латинского алфавита).
Выведите одно целое число — максимально возможную длину максимальной подстроки $$$s$$$, состоящей из различных символов, после переворота не более чем одной ее подстроки.
abacaba
3
abcdecdf
6
aabbcc
3
abcdeefc
6
Название |
---|