Pagini recente » Cod sursa (job #277244) | Cod sursa (job #316673) | Cod sursa (job #1117577) | Cod sursa (job #901340) | Cod sursa (job #2407474)
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define Inf 1999999999
ifstream in("energii.in");
ofstream out("energii.out");
#define Gmax 10005
ll G,W,E[Gmax],C[Gmax],Dp[Gmax];
int main(){
in>>G>>W;
for(int i = 1; i <= G; ++i) in>>E[i]>>C[i];
for(int i = 1; i < Gmax; ++i) Dp[i] = Inf;
for(int i = 1; i <= G; ++i){
for(int j = W; j >= E[i]; --j)
Dp[j] = min(Dp[j], Dp[j - E[i]] + C[i]);
for(int j = 1; j <= E[i]; ++j)
Dp[j] = min(Dp[j], C[i]);
}
if(Dp[W] == Inf) out<<Dp[W];
else out<<-1;
return 0;
}