Pagini recente » Cod sursa (job #1632608) | Cod sursa (job #3273902) | Cod sursa (job #2797290) | Cod sursa (job #2998765) | Cod sursa (job #495332)
Cod sursa(job #495332)
#include<stdio.h>
//int v[10001];
struct vector{ int a, b;};
vector v[100001];
int main(){
freopen ("energii.in", "r", stdin);
freopen ("energii.out", "w", stdout);
int n, i, k, g, j, w, sum=0;
v[0].a=1;
scanf("%d %d ", &n, &g);
for(i=1; i<=n; i++){
scanf("%d %d ", &k, &w);
sum+=k;
for(j=g; j>=0; j--){
if(v[j].a){
v[j+k].a=1;
if(v[j+k].b > v[j].b+w || v[j+k].b==0)
v[j+k].b=v[j].b+w;
}
}
}
int extramin=999999;
for(i=g; i<=sum; i++)
if(v[i].b<extramin && v[i].b)
extramin=v[i].b;
if(extramin==999999)
printf("-1");
else
printf("%d ", extramin);
return 0;
}