Pagini recente » Cod sursa (job #1953960) | Cod sursa (job #1026752) | Cod sursa (job #569155) | Cod sursa (job #1410568) | Cod sursa (job #208970)
Cod sursa(job #208970)
#include <cstdio>
using namespace std;
const unsigned int INF = 1<<31;
int main () {
freopen("energii.in", "r", stdin);
freopen("energii.out", "w+", stdout);
unsigned int numGen, minW, cant[1001], cost[1001], Cmin[5001], rasp=INF;
bool used[5001][1001];
scanf("%u%u", &numGen, &minW);
for (unsigned int i=0; i<numGen; ++i)
scanf("%u%u", cant+i, cost+i);
for (unsigned int i=0; i<=5000; ++i) {
Cmin[i]=INF;
for (unsigned int j=0; j<numGen; ++j)
if (i-cant[j]>=0 && !used[i][i-cant[j]]) {
unsigned int crt = Cmin[i-cant[j]]+cost[j];
if (crt<Cmin[i]) Cmin[i] = crt;
}
if (i>=minW && Cmin[i]<rasp)
rasp = Cmin[i];
}
printf("%u\n", rasp);
return 0;
}