Cod sursa(job #3242167)

Utilizator vlad7654vladimir manescu vlad7654 Data 9 septembrie 2024 17:24:20
Problema Energii Scor 95
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
struct obiect{
    int greutate, val;
};
const int NMAX=1e7;
vector<int> dp(NMAX+5);
int main(){
    int n, g;
    fin>>n>>g;
    vector<struct obiect> v(n+1);
    for(int i=1;i<=n;i++){
        fin>>v[i].greutate>>v[i].val;
    }
    for(int i=1;i<=n;i++){
        for(int j=1e4+5-v[i].val;j>=0;j--){
            dp[j+v[i].val]=max(dp[j+v[i].val], dp[j]+v[i].greutate);
        }
    }
    int min1=INT_MAX;
    for(int i=1;i<=NMAX;i++){
        if(dp[i]>=g and i<min1){
            min1=i;
        }
    }
    fout<<min1;

}