Cod sursa(job #3276774)

Utilizator BogdanBurescuBogdan Burescu BogdanBurescu Data 14 februarie 2025 17:14:44
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <vector>
#include <queue>
#include <map>
#include <algorithm>
#include <iomanip>

using namespace std;

ifstream cin ("energii.in");
ofstream cout ("energii.out");

const int kmax=10005;
int n,k,a[10005],g[10005],ans;

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);

    cin>>n>>k;
    for(int i=1; i<=n; i++)
        cin>>g[i]>>a[i];
    vector<int>dp(kmax+5,1e9);
    dp[0]=0;
    for(int i=1; i<=n; i++)
        for(int j=kmax-g[i]; j>=0; j--)
        {
            dp[j+g[i]]=min(dp[j+g[i]],dp[j]+a[i]);
        }
    ans=1e9;
    for(int i=k;i<=kmax;i++)
        ans=min(ans,dp[i]);
    if(ans==1e9)
        cout<<-1;
    else
        cout<<ans;
    return 0;
}