Cod sursa(job #2644446)
Utilizator | Data | 24 august 2020 17:06:53 | |
---|---|---|---|
Problema | Energii | Scor | 100 |
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+e)
m=j+e;
else
m=w;
if(dp[m]>dp[j]+c)
dp[m]=dp[j]+c;
}
}
if(dp[w]!=1000000)
fout<<dp[w];
else
fout<<-1;
return 0;
}