Pagini recente » Cod sursa (job #3317421) | Monitorul de evaluare | Cod sursa (job #3324821) | Cod sursa (job #1221565) | Cod sursa (job #3320905)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int main(){
int n,tg;
fin>>n>>tg;
vector<int>dp(1000000,INT_MAX-100);
vector<pair<int,int>>v(n);
for(auto &x:v){
fin>>x.first>>x.second;
}
dp[0]=0;
int out=INT_MAX-1;
for(int i=0;i<n;i++){
for(int j=tg;j>=v[i].first;j--){
dp[j]=min(dp[j],dp[j-v[i].first]+v[i].second);
}
}
int rez=INT_MAX-1;
for(int i=1;i<=10000;i++){
if(i>=tg)rez=min(rez,dp[i]);
}
if(rez!=INT_MAX-1)fout<<rez;
else fout<<"-1";
return 0;
}