Pagini recente » Cod sursa (job #910330) | Cod sursa (job #540546) | Cod sursa (job #132337) | Cod sursa (job #738664) | Cod sursa (job #3204010)
#include <bits/stdc++.h>
using namespace std;
#define INFILE "energii.in"
#define OUTFILE "energii.out"
const int N_MAX = 15e3;
const int INF = 1e9;
int n, target;
int dp[N_MAX + 3];
void solve(){
cin >> n >> target;
for(int i = 1; i <= N_MAX; ++i) dp[i] = INF;
for(int i = 1; i <= n; ++i){
int a, b; cin >> a >> b;
for(int energy = N_MAX - a; energy >= 0; --energy){
if(dp[energy] != INF){
dp[energy + a] = min(dp[energy + a], dp[energy] + b);
}
}
}
cout << (dp[target] == INF ? -1 : dp[target]) << '\n';
}
int main(){
ios_base::sync_with_stdio(false);
freopen(INFILE, "r", stdin);
freopen(OUTFILE, "w", stdout);
cin.tie(0), cout.tie(0);
solve();
return 0;
}