"banana" разнообразие равно 3: в ней встречаются только a, b и n.
Дана строка text. Рассмотрите все её непустые подстроки — непрерывные куски строки, причём одинаковые по содержанию куски, стоящие на разных позициях, считаются разными. Верните сумму их разнообразий.
Перебор всех подстрок занимает O(n²) и больше — попробуйте обойтись одним проходом.text='kayak' → 30
Однобуквенные подстроки дают 5. Двухбуквенные «ka», «ay», «ya», «ak» — по 2, итого 8. Трёхбуквенные «kay», «aya», «yak» — 3 + 2 + 3 = 8. Четырёхбуквенные «kaya» и «ayak» — по 3, итого 6. Вся строка — 3. Сумма: 5 + 8 + 8 + 6 + 3 = 30.
text='mmm' → 6
Шесть подстрок, и в каждой ровно одна различная буква.
text='xyz' → 10
text состоит только из строчных латинских буквtext='kayak'
30
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 72 теста на сервере, включая скрытые.