Pagini recente » Cod sursa (job #1762726) | Cod sursa (job #1067631) | Cod sursa (job #1748883) | Cod sursa (job #693952) | Cod sursa (job #2799397)
#include <fstream>
#include <cstring>
using namespace std;
ifstream cin("energii.in");
ofstream cout("energii.out");
int n,W,EG[1005],CG[1005],dp[5005];
int main()
{
cin>>n>>W;
for(int i=1;i<=n;i++){
cin>>EG[i]>>CG[i];
}
for(int i=1;i<=W;i++)
dp[i]=1000000005;
for(int i=1;i<=n;i++){
for(int j=W;j>=1;j--)
if(j<=EG[i]) dp[j]=(dp[j]<CG[i]?dp[j]:CG[i]);
else dp[j] = (dp[j]<CG[i]+dp[j-CG[i]]?dp[j]:CG[i]+dp[j-CG[i]]);
}
if(dp[W]==1000000005) cout<<"-1";
else cout<<dp[W];
}