Cod sursa(job #2644438)
Utilizator | Data | 24 august 2020 17:00:50 | |
---|---|---|---|
Problema | Energii | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include<fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int dp[10000];
int main () {
int n,w,e,c,m;
fin>>n>>w;
for(int i=1;i<=w;i++)
dp[i]=1000000;
for(int i=1;i<=n;i++){
fin>>e>>c;
for(int j=w;j>=0;j--){
if(w>j+c)
m=j+c;
else
m=w;
if(dp[m]>dp[j]+e)
dp[m]=dp[j]+e;
}
}
if(dp[w]!=1000000)
fout<<dp[w];
else
fout<<-1;
return 0;
}