Pagini recente » Cod sursa (job #2919875) | Cod sursa (job #2560115) | Cod sursa (job #1700496) | Cod sursa (job #2778550) | Cod sursa (job #1748773)
#include <iostream>
#include <fstream>
#include <cstring>
#define NMAX 1010
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int a[NMAX][NMAX] ;
int e[NMAX],c[NMAX];
int emin,n;
// unsolved
int main()
{
f >> n >> emin;
for(int i=1; i<=n; i++)
{
f >> e[i] >> c[i];
}
for(int i=0;i<=n;i++)
for(int j=1;j<=emin;j++)
a[i][j] = 10000000;
for(int i=1;i<=n;i++){
for(int w=1;w<=emin;w++){
a[i][w] = a[i-1][w];
if(w >= e[i]) a[i][w] = min(a[i][w],a[i-1][w-e[i]] + c[i]);
else if(w <= e[i]) a[i][w] = min(a[i][w],c[i]);
}
}
if(a[n][emin] == 10000000) g << -1;
else g << a[n][emin];
return 0;
}