Cod sursa(job #2430935)

Utilizator Sho10Andrei Alexandru Sho10 Data 17 iunie 2019 12:38:00
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include <bits/stdc++.h> //JuniorMonster a.k.a Sho10
#define ll long long
#define all(a) (a).begin(), (a).end()
#define sz size
#define f first
#define s second
#define pb push_back
#define er erase
#define in insert
#define mp make_pair
#define pi pair
#define rc(s) return cout<<s,0
#define mod 1000000007
#define PI 3.14159265359
#define CODE_START  ios_base::sync_with_stdio();cin.tie(0);cout.tie(0);
using namespace std;
ll n,m,b[5000];
pair<ll,ll>a[5000];
int main(){
    ifstream cin("rucsac.in");
    ofstream cout("rucsac.out");
  cin>>n;
    cin>>m;
    for(ll i=0;i<n;i++)
    {
        cin>>a[i].s;
        cin>>b[i];
        a[i].f=b[i]-a[i].s;
    }
sort(a,a+n);
ll s=0,ans=0;
for(ll i=n-1;i>=0;i--)
    if(s+a[i].s<=m){
        ans=ans+a[i].f+a[i].s;
        s=s+a[i].s;
    }
cout<<ans;
return 0;}