#include <bits/stdc++.h> using namespace std; long long a[300000];//存放两张牌和差值 int main(){ long long n,i,j,x,y,k,s_x,s_y,s; cin>>n; //统计上面的牌比下面的大的有多少 //上面的比下面的小不会有人拿 k = 0; s = 0; for(i = 0;i < n;i++){ cin>>x>>y; if(x >= y){ a[k] = x; a[k + 1] = y; k = k + 2; s = s + x + y; } } //数组排序 sort(a,a+k); //初始化得分 s_x = 0; s_y = 0; for(i = k - 1;i >= 0;i = i - 2){ s_x = s_x + a[i]; } s_y = s - s_x; cout<<s_x - s_y<<endl; } /************************************************************** Problem: 1526 User: admin Language: C++ Result: Accepted Time:153 ms Memory:4420 kb ****************************************************************/