Contest.samsu.ru :: соревнования по программированию
Русская версия || English version
Login:
Password:
Забыли пароль?
 пример поиска: Вася Пупкин
 

Задача С. Коллоквиум

Задачу добавил: alef

Успешно сдано решений: 6

Вообще-то Олег не собирался идти на коллоквиум. Он говорил всем одногруппникам, что перед экзаменом будет целых 4 дня подготовки, за которые он спокойно изучит весь курс. Однако за день до коллоквиума, пролистав тетрадку однокурсницы, он пересчитал странички, исписанные довольно крупным аккуратным почерком, и решил, что предложение "выгодное". Выучи несколько десятков страниц - и на экзамене отвечай на один теоретический вопрос из билета вместо двух. Правда, для получения этого бонуса на коллоквиуме надо получить оценку не ниже "хорошо".

На коллоквиум вынесено несколько тем, в каждой из тем несколько вопросов. Конечно, за день (точнее, за ночь) Олег выучил не всё. Он рассудил, что по каждой теме нужно знать хотя бы что-то, поэтому вышло так, что по каждой теме он не знает как минимум один вопрос (возможно, и больше, но для нас сейчас это роли не играет).

Опишем процедуру сдачи коллоквиума (характерную для одного конкретного преподавателя).

Коллоквиум проходит в форме беседы. Преподаватель (будем считать, что случайным образом) выбирает тему и просит студента рассказать на выбор любой вопрос по этой теме. В случае успеха преподаватель вновь выбирает тему (она может совпадать с предыдущей) и вновь предлагает студенту рассказать любой вопрос по этой теме. Однако у преподавателя на редкость хорошая память, и если студент повторяет один из ранее данных ответов, то беседа прекращается. Разумеется, прекращается она и в том случае, если студент честно отвечает, что по этой теме он ничего более сказать уже не может.

По итогам беседы преподаватель выставляет оценку. Критерии оценки Олегу ясны не до конца, и поэтому пока он хочет просто узнать, какое (в среднем) число вопросов задаст ему преподаватель, прежде чем ему придется ответить "не знаю".


Формат входного файла input.txt

Первая строка содержит натуральное число N (N <= 50) и целое число M (0 <= M <= 50) — количество тем и количество вопросов, которые Олег знает.

Вторая строка содержит N целых чисел Aj (j = 1, 2, ..., N; 0 <= Aj <= M) через пробел, задающих распределение известных Олегу вопросов по темам (Aj - количество вопросов, которые он знает в теме j).


Формат выходного файла output.txt

Первая строка — вещественное число с точностью 5 знаков после запятой — число вопросов (в среднем), на которые Олег сможет ответить


Пример входного файла

4 3

3 0 0 0


Пример выходного файла

0.328125


Сдать задачу

Задать вопрос жюри по этой задаче