#include <bits/stdc++.h>
using namespace std;
const int N = 2010;
const int M = 32010;
const int MOD = 1000000007ll;
const int INF = 0x7fffffff;
const int dir[4][2] = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}};
const double eps = 1e-7;
const double PI = acos(-1.0);
inline int sign(double x) { return (x > eps) - (x < -eps); }
template <class T>
T gcd(T a, T b) {
  return b ? gcd(b, a % b) : a;
}
template <class T>
T lcm(T a, T b) {
  return a / gcd(a, b) * b;
}
template <class T>
inline T lcm(T a, T b, T d) {
  return a / d * b;
}
template <class T>
inline T Min(T a, T b) {
  return a < b ? a : b;
}
template <class T>
inline T Max(T a, T b) {
  return a > b ? a : b;
}
template <class T>
inline T Min(T a, T b, T c) {
  return min(min(a, b), c);
}
template <class T>
inline T Max(T a, T b, T c) {
  return max(max(a, b), c);
}
template <class T>
inline T Min(T a, T b, T c, T d) {
  return min(min(a, b), min(c, d));
}
template <class T>
inline T Max(T a, T b, T c, T d) {
  return max(max(a, b), max(c, d));
}
double base[4010];
vector<double> ans;
int main() {
  int n;
  cin >> n;
  double res = 0;
  int a = 0, b = 0;
  for (int i = 0; i < 2 * n; i++) {
    cin >> base[i];
    if (base[i] > 1) {
      base[i] = base[i] - (int)(base[i]);
    }
    if (base[i] > 1e-8) {
      res += base[i];
    } else
      a++;
  }
  int s = n - a;
  if (s < 0) s = 0;
  double ans = 10005;
  for (int i = s; i <= n; i++) {
    if (ans > fabs(i - res)) {
      ans = fabs(i - res);
    }
  }
  printf("%.3lf\n", ans);
  return 0;
}
