Cod sursa(job #2520165)

Utilizator drknss_Hehe hehe drknss_ Data 9 ianuarie 2020 01:14:11
Problema Energii Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<bits/stdc++.h>
using namespace std;
long long w[1010],c[1010],n,g,tot,ans[10001*1001+5];
int32_t main(){
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cerr.tie(0);
    ifstream cin("energii.in");
    ofstream cout("energii.out");
    cin >> n >> g;
    for(int i = 1; i <= n; i++){
        cin >> w[i] >> c[i];
        tot += c[i];
    }
    for(int i = 1; i <= n; i++){
        for(int j = tot; j >= c[i]; j--){
            ans[j] = max(ans[j] , ans[j-c[i]] + w[i]);
        }
    }
    for(int i = 1; i <= tot; i++){
        if(ans[i] >= g){
            cout<<i;
            return 0;
        }
    }
    cout<<"-1";
}