fork download
  1. #include<bits/stdc++.h>
  2. #define ll long long
  3. #define ite iterator
  4. #define mp make_pair
  5. #define ff first
  6. #define ss second
  7. #define pb push_back
  8. #define ioS ios::sync_with_stdio(false);
  9. #define pii pair<ll,ll>
  10. #define re0 return 0;
  11. using namespace std ;
  12.  
  13. ll n,i,j,k,y,x,ans1,ans2,sum,lo,hi,ans,q ,t,flag,m ;
  14. ll inf = 1000000000000000000 ;
  15. ll dp[40005][12],b[4030005],a[4000005],ways[3000] ;
  16. map<ll,ll> m1 ,m2;
  17. map<ll,ll>::iterator itr,itr1,itr2 ;
  18. pair<ll,pair<ll,ll> > p[200005] ;
  19.  
  20. vector<pair<ll,ll> >v[200000] ;
  21.  
  22. string s ;
  23. ll mod=1e9+7 ;
  24. struct cmp {
  25. bool operator() (const pair<ll,pair<ll,ll> > &a, const pair<ll,pair<ll,ll> > &b) {
  26. if(a.ff==b.ff){return a.ss.ff<b.ss.ff ;}
  27. else{return a.ff<b.ff ;}
  28. }
  29. };
  30. int main(){
  31.  
  32. cin >> n >> k ;
  33.  
  34. for(i=0;i<n;i++){
  35. cin >> p[i].ss.ff >> p[i].ss.ss ;
  36. p[i].ff=p[i].ss.ff+p[i].ss.ss ;
  37. }
  38.  
  39. sort(p,p+n,cmp()) ;
  40. ans = 0 ;
  41.  
  42. i=n-1;
  43. j=0;
  44.  
  45. for(i=n-1;i>=0;i--){
  46. if(j<k){ x+=p[i].ss.ff; j++;}
  47. else{ x-=p[i].ss.ss ;}
  48. }
  49. ans=max(x,ans) ;
  50. cout << ans << endl ;
  51. }
  52.  
Success #stdin #stdout 0s 76992KB
stdin
2 1
10 5
3 1
stdout
9