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

Клавиатура

Клавиатура

Однажды, Олег купил себе новый ноутбук. Олег - большой любитель малость устаревшей операционной системы \textit{\textbf{Dindows PX}}. Но, как известно, современные ноутбуки поставляются с предустановленной \textit{\textbf{ОС Dindows версии 18}}. Так что Олег, недолго думая, удалил предустановленную \textit{\textbf{Dindows 18}} и установил столь любимую им версию \textit{\textbf{PX}}. Разумеется, всё было далеко не так просто, ведь производители железа часто забрасывают написание нормальных драйверов для несколько устаревших операционных систем. Так что долгими днями и бессонными ночами боролся Олег с зависаниями и Зелеными Экранами Жизни. И вот, наконец, у него это получилось! Не было предела радости Олега... По крайней мере, до тех пор, пока не выяснилось, что половина железа работает не совсем корректно. Но разве могло это его остановить? И вот, однажды перед Олегом предстала следующая задача: напечатать некоторый текст \textbf{S} длины \textbf{n}. Казалось бы, что может быть проще? Если бы только не один маленький баг с клавиатурой - после загрузки ноутбука некоторые символы на клавиатуре не работают. Судя по наблюдениям Олега, после каждой перезагрузки работают ровно \textbf{t }латинских символов, которые каждый раз выбираются случайно с равной вероятностью. Изначально, у Олега есть пустой файл. Он может дописывать новые символы только в конец файла, и уже написанный текст сохраняется перед каждой перезагрузкой, так что он может продолжать его редактирование после перезагрузки с сохранённого места. Олег хочет посчитать матожидание количества перезагрузок, которые ему придется совершить, чтобы полностью напечатать текст \textbf{S}. Разумеется, он и сам бы легко написал нужную программу, но с его-то клавиатурой это достаточно проблематично, поэтому он попросил вас помочь ему. \InputFile В первой строке входного файла находится два числа \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{10^6}) и \textbf{t} (\textbf{1} ≤ \textbf{t} ≤ \textbf{26}). Во второй строке находится строка \textbf{S} длины \textbf{n}, состоящая из строчных латинских букв. \OutputFile Выведите искомое матожидание с абсолютной или относительной погрешностью не более, чем \textbf{10 ^\{- 6\}}.
Лимит времени 3 секунды
Лимит использования памяти 512 MiB
Входные данные #1
8 15
keyboard
Выходные данные #1
7.261344204120

Объяснение: Изначально, ноутбук Олега выключен и первое включение считается, как перезагрузка.

Автор Олег Петров
Источник Летняя школа Севастополь 2013, Волна 2, День 6