如这一组数据
3
5 2
1 5
200 200
为什么输出-1?
附本蒟蒻代码:
#include<bits/stdc++.h>
using namespace std;
long long n,ans=0;
struct cow{
int w,s;
}a[100001];
bool cmp(cow a,cow b){
if(a.w==b.w)return a.s>b.s;
else return a.w>b.w;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i].w>>a[i].s;
sort(a+1,a+n+1,cmp);
for(int i=2;i<=n;i++)ans+=a[i].w;
cout<<ans<<" "<<a[1].s<<endl;
cout<<ans-a[1].s;
return 0;
}