Cod sursa(job #2532402)
Utilizator | Preda Andrei PredaBoss | Data | 27 ianuarie 2020 20:00:10 |
---|---|---|---|
Problema | Energii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int g,w,e,c;
int dp[10005];
int main()
{
fin>>g;
fin>>w;
int ans=INT_MAX;
for(int i=1;i<=10000;i++)dp[i]=INT_MAX;
for(int i=1;i<=g;i++)
{
fin>>e>>c;
for(int j=10000;j>=e;j--)
if(dp[j-e]!=INT_MAX)
{
dp[j]=min(dp[j],dp[j-e]+c);
if(j>=w)
ans=min(ans,dp[j]);
}
}
if(ans!=INT_MAX)
fout<<ans;
else
fout<<-1;
return 0;
}