Pagini recente » oni_2010_ramas | Cod sursa (job #2560850) | Cod sursa (job #718493) | Cod sursa (job #450611) | Cod sursa (job #3155322)
#include <iostream>
#include <fstream>
#define INF 1000000
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n, gmax, dp[10005];
void init() {
for (int i=1; i<=10000; i++)
dp[i]=INF;
}
void citire() {
fin>>n>>gmax;
init();
int g, v;
for (int i=0; i<n; i++) {
fin>>g>>v;
for (int j=10000; j>=g; j--)
dp[j]=min(dp[j], dp[j-g]+v);
}
}
int minim() {
int vmin=INF;
for (int i=10000; i>=gmax; i--)
vmin=min(vmin, dp[i]);
if (vmin==INF)
return -1;
return vmin;
}
int main() {
citire();
fout<<minim();
return 0;
}