#include #include #include #include #include #include #define MP make_pair using ll = long long; using namespace std; int main() { int n; cin >> n; vector >H(n, vector(2)); for(int i=0; i < n; i++){ cin >> H[i][0]; cin >> H[i][1]; } vectorD(n); for(int i=0; i < n; i++){ D[i] = H[i][0] + H[i][1]; //cout << D[i] << endl; } sort(D.begin(), D.end()); ll ans = 0; vectorS(n); S[0] = D[0]; vectorB(n); B[0] = D[n-1]; for(int i=1; i < n; i++) S[i] = S[0] + D[i]; for(int i=1; i < n; i++) B[i] = B[0] + D[n-i]; ll sum=0; for(int i=0; i < n; i++) sum += H[i][0]; int k; ll min1 = 1000000000; ll min2 = 1000000000; int mink1, mink2; for(k=1; k < n; k++){ if(abs(sum - S[k]) <= min1){ min1 = sum - S[k]; mink1 = k; } } for(k=1; k < n; k++){ if(abs(sum - B[k]) <= min2){ min2 = abs(sum - B[k]); mink2 = k; } } if(n >= 2){ if(min1 < min2) cout << abs(sum-S[mink1]) << endl; else cout << abs(sum-B[mink2]) << endl; }else{ if(H[0][0] < H[0][1]) cout << H[0][0] << endl; else cout << H[0][1] << endl; } return 0; }