Pagini recente » Cod sursa (job #3314738) | Cod sursa (job #833112) | Cod sursa (job #1815300) | Cod sursa (job #231364) | Cod sursa (job #3337731)
#include <fstream>
#include <climits>
#include <algorithm>
#include <cstring>
using namespace std;
ifstream cin("energii.in");
ofstream cout("energii.out");
// declaring outside main for zeros
int d[5010];
int main()
{
/// declaring
int e[1001],c[1001],w,g,k;
////reading
cin >> g >>w;
for (int i=1;i<=g;i++){
cin >> e[i] >> c[i];
}
////initialze
for (int i=1;i<=w;i++){
d[i]=10010;
}
//algorithm
for (int i=1;i<=g;i++){
for (int j=w-1;j>=0;j--){
if (d[j]!=-1){
k=j+e[i];
if(k>w){
k=w;
}
if (d[k]>c[i]+d[j]){
d[k]=c[i]+d[j];
}
}
}
}
//outputting
if (d[w]==10010){
cout << -1;
}
else
cout << d[w];
}
//test
/**/