#include <cstdio>
#include <cmath>
#define PRECISION 1e-8
#define N 101
struct POINT {
    double x, y;

    POINT(double x, double y) :
        x(x), y(y) {
    }

    POINT() :
        x(0), y(0) {
    }
};
POINT plist[N];

inline double sqr(double x) {
    return x * x;
}

double pt_distance(const POINT &p1, const POINT &p2) {
    return sqrt(sqr(p1.x - p2.x) + sqr(p1.y - p2.y));
}
double get_all_dis(const POINT &p, int n) {
    double ans = 0.0;
    for (int i = 0; i < n; i++)
        ans += pt_distance(plist[i], p);
    return ans;
}

int main() {
    int i, n;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
        scanf("%lf%lf", &plist[i].x, &plist[i].y);
    POINT st = plist[0];
    double step = 100, mind = get_all_dis(st, n);
    while (step > 0.2) {
        int ok = 1;
        while (ok) {
            POINT tmp, nt;
            double t;
            ok = 0,nt = st;
            tmp = POINT(st.x, st.y + step);
            t = get_all_dis(tmp, n);
            if (t < mind)
                mind = t, ok = 1, nt = tmp;

            tmp = POINT(st.x, st.y - step);
            t = get_all_dis(tmp, n);
            if (t < mind)
                mind = t, ok = 1, nt = tmp;

            tmp = POINT(st.x + step, st.y);
            t = get_all_dis(tmp, n);
            if (t < mind)
                mind = t, ok = 1, nt = tmp;

            tmp = POINT(st.x - step, st.y);
            t = get_all_dis(tmp, n);
            if (t < mind)
                mind = t, ok = 1, nt = tmp;
            st = nt;
        }
        step = step / 2.0;
    }
    int ans = (int) (mind + 0.5) * 100 / 100;
    printf("%d\n", ans);
    return 0;
}
