1 条题解
-
0Guest LV 0 MOD
-
1
#include<bits/stdc++.h> using namespace std; int n; long long ans=0; struct node { int x,y,sum=0; } a[600005]; bool cmp(node s,node t)//按照每个奶牛手里的数字总和排序 { return s.sum>t.sum; } int main() { cin>>n; for(int i=1; i<=n; i++) { cin>>a[i].x>>a[i].y;//读入 a[i].sum=a[i].x+a[i].y;//奶牛手里的数字总和 } sort(a+1,a+n+1,cmp);//排序 for(int i=1; i<=n/2; i++)//每次减去最大的 ans-=max(a[i].x,a[i].y); for(int i=n/2+1; i<=n; i++)//加上最小的 ans+=min(a[i].x,a[i].y); cout<<ans<<endl; return 0; }
- 1