Багаж
У Йохана очень скучная работа в аэропорту. Его задача — следить за тем, чтобы сумки не сталкивались, когда они попадают на круговой конвейер в зоне выдачи багажа. Весь багаж загружается на прямой конвейер, который заканчивается над круговым конвейером. Йохан вручную регулирует скорость прямого конвейера, чтобы избежать столкновений. Он предпочел бы установить постоянную скорость, чтобы пойти в комнату отдыха. В начале длинного конвейера установлен датчик, который позволяет ему получать позиции всех сумок на свой компьютер. Теперь ему нужен алгоритм, который определит максимальную скорость, при которой не произойдет столкновений.
Круговой конвейер движется с постоянной скоростью 1 м/с. Если багаж попадает на круговой конвейер в пределах одного метра от позиции другого багажа, они могут столкнуться, поэтому этого следует избегать. Некоторые сумки могут быть забраны в первом круге, но заранее неизвестно, какие останутся. Скорость прямого конвейера можно установить в пределах от 0.1 м/с до 10 м/с.
Входные данные
Первая строка входных данных содержит два положительных целых числа N и L (1 ≤ N ≤ L ≤ 1000), где N — количество сумок, а L — длина кругового конвейера в метрах. Вторая строка содержит N уникальных чисел x_i, разделенных пробелами (0 ≤ x_i ≤ 1000) с двумя знаками после запятой, обозначающих позиции багажа в метрах.
Выходные данные
Выведите максимальную скорость v в м/с (0.1 ≤ v ≤ 10), которая гарантирует отсутствие столкновений, или "no fika", если такой скорости не существует. Ответ считается правильным, если абсолютная ошибка не превышает 10^{−9}. Можно предположить, что если существует оптимальная v, то каждая скорость в интервале [v−10^{−9}, v] также будет допустимой.