样例全过,一交全错
#include<bits/stdc++.h>
#define int long long
#define N 100005
using namespace std;
int n;
double ans = 1e15;
double sum[N];
struct node {
double x, y, res;
}a[N];
bool cmp1(node A, node B) { return A.x < B.x; }
bool cmp2(node A, node B) { return A.y < B.y; }
signed main() {
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
cin >> n;
for(int i = 1; i <= n; i++) {
int X, Y;
cin >> X >> Y;
a[i].x = (double)(X + Y) / 2.0;
a[i].y = (double)(X - Y) / 2.0;
//cout << a[i].x << " " << a[i].y << endl;
}
//cout << ans << endl;
sort(a + 1, a + n + 1, cmp1);
for(int i = 1; i <= n; i++) sum[i] = sum[i - 1] + a[i].x;
for(int i = 1; i <= n; i++) a[i].res = 1.00 * (i - 1) * a[i].x - sum[i - 1] + sum[n] - sum[i] - 1.00 * a[i].x * (n - i);
sort(a + 1, a + n + 1, cmp2);
for(int i = 1; i <= n; i++) sum[i] = sum[i - 1] + a[i].y;
for(int i = 1; i <= n; i++) {
a[i].res += 1.00 * (i - 1) * a[i].y - sum[i - 1] + sum[n] - sum[i] - 1.00 * a[i].y * (n - i);
ans = min(ans, a[i].res);
}
cout << ans;
return 0;
}