A. Джефф и округления
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Джефф получил в подарок 2n действительных чисел a1, a2, ..., a2n. Мальчик ненавидит нецелые числа, поэтому он решил слегка изменить подаренные числа. А именно, Джефф последовательно выполняет n операций, каждая из которых:

  • выбрать два не выбиравшихся ранее индекса i и j (i ≠ j);
  • округлить элемент ai к ближайшему целому числу, которое не больше ai (ai присвоить ai ⌋);
  • округлить элемент aj к ближайшему целому числу, которое не меньше aj (aj присвоить aj ⌉).

Тем не менее Джефф не хочет обижать человека, который подарил ему последовательность. Поэтому мальчик хочет выполнить операции так, чтобы значение модуля разницы между суммой элементов перед выполнением операций и суммой элементов после выполнения всех операций было как можно меньше. Помогите Джеффу найти минимальное значение модуля разницы.

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

В первой строке содержится целое число n (1 ≤ n ≤ 2000). Следующая строка содержит 2n действительных чисел a1, a2, ..., a2n (0 ≤ ai ≤ 10000), заданных с ровно тремя знаками после точки. Числа разделены пробелами.

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

В единственную строку выведите вещественное число — искомую разницу с ровно тремя знаками после точки.

Примеры
Входные данные
3
0.000 0.500 0.750 1.000 2.000 3.000
Выходные данные
0.250
Входные данные
3
4469.000 6526.000 4864.000 9356.383 7490.000 995.896
Выходные данные
0.279
Примечание

В первом тесте нужно выполнить операции следующим образом: (i = 1, j = 4), (i = 2, j = 3), (i = 5, j = 6). В таком случае разница будет равна |(0 + 0.5 + 0.75 + 1 + 2 + 3) - (0 + 0 + 1 + 1 + 2 + 3)| = 0.25.