G. Акинатор
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Однажды хакер Дмитрий открыл для себя интересную игру — Акинатор. Правила игры очень просты: игрок загадывает какого-нибудь известного человека, а Акинатор пытается угадать этого человека за ограниченное количество вопросов. Каждый ход Акинатор спрашивает игрока: «Этот человек — i1 или i2 или ... или im?» (здесь m — это количество человек, про которых был задан вопрос, оно может меняться от вопроса к вопросу). Игрок может ответить «Да» или «Нет», а Акинатор будет использовать полученную информацию. Как только Акинатор гарантированно угадал задуманного человека, он говорит ответ и выигрывает. Если же Акинатор не может уложиться в заданное число вопросов, он проигрывает.

Акинатор должен угадать задуманного человека за k вопросов. Заранее известно, что Дмитрий задумал одного из n человек: 1, 2, ..., n с вероятностями p1, p2, ..., pn. Определите, сможет ли Акинатор гарантированно угадать человека за k вопросов, и если да, какое минимальное среднее число вопросов ему для этого понадобится.

Входные данные

Первая строка содержит два целых числа n и k (1 ≤ k ≤ n ≤ 100) — количество человек, которые могли быть загаданы и количество вопросов.

Вторая строка содержит n целых чисел a1, a2, ... an (1 ≤ ai ≤ 1012). Вероятности pi прямо пропорциональны ai, т. е. могут быть вычислены как .

Выходные данные

Если Акинатор не сможет гарантированно угадать задуманного человека, выведите «No solution».

Иначе выведите несократимую рациональную дробь — минимально возможное среднее число вопросов, которое понадобится Акинатору, чтобы победить.

Примеры
Входные данные
4 1
8 1 9 2
Выходные данные
No solution
Входные данные
4 2
1 2 3 4
Выходные данные
2/1
Входные данные
4 3
1 2 3 4
Выходные данные
19/10
Примечание

В третьем примере Акинатор может задать 3 вопроса. Оптимальным будет задать первый вопрос про четвертого человека. Если будет получен ответ «Нет», то следует спросить про третьего человека. Если же и в этом случае будет получен ответ «Нет», то последним вопросом нужно сделать выбор между первым и вторым человеком.

Среднее количество вопросов в этом случае равно 0.4·1 + 0.3·2 + 0.2·3 + 0.1·3 = 1.9.