Cod sursa(job #3288211)

Utilizator MerlinTheWizardMelvin Abibula MerlinTheWizard Data 20 martie 2025 20:59:09
Problema Energii Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<bits/stdc++.h>
#define int long long

using namespace std;

const int NMAX = 5e3 + 5, GMAX = 1e4 + 5, INF = 1e10 + 7;
int n, k, dp[GMAX];
pair<int, int> v[NMAX];

int32_t main()
{
    freopen("energii.in", "r", stdin);
    freopen("energii.out", "w", stdout);
    cin >> n >> k;
    for(int i = 1; i <= n; i++)
        cin >> v[i].first >> v[i].second;
    
    for(int i = 1; i <= k; i++)
        dp[i] = INF;
    
    for(int i = 1; i <= n; i++)
    {
        for(int j = k; j >= v[i].first; j--)
        {
            dp[j] = min(dp[j], dp[j - v[i].first] + v[i].second);
        }
    }
    
    if(dp[k] == INF)
        cout<< "-1";
    else
        cout << dp[k];
}