Pagini recente » Cod sursa (job #473727) | Cod sursa (job #2953841) | Cod sursa (job #1553159) | Cod sursa (job #804854) | Cod sursa (job #1636821)
#include <stdio.h>
#include <algorithm>
using namespace std;
#define ll long long unsigned
#define pb push_back
#define mp make_pair
int EG[1005],CG[1005];
// dp[i] = pretul minim pt a produce i energie
int main(){
int G,W,j;
freopen("energii.in", "r", stdin);
freopen("energii.out", "w", stdout);
scanf("%d",&G);
scanf("%d",&W);
for(int i = 1;i <= G;i++){
scanf("%d %d",&EG[i],&CG[i]);
}
int mn = 1e7;
ll limit = 1;
for(int i = 1;i <= G;i++){
limit = 1LL*limit*2;
}
for(ll i = 1;i < limit;i++){
ll aux = i;
int sum = 0;
int cost = 0;
int cnt = 1;
while(aux){
if(aux&1){
sum += EG[cnt];
cost += CG[cnt];
}
aux >>= 1;
cnt++;
}
if(sum >= W){
mn = min(mn, cost);
}
}
printf("%d",mn);
}