Pagini recente » Cod sursa (job #1703174) | Cod sursa (job #2430054) | Cod sursa (job #256100) | Cod sursa (job #1596081) | Cod sursa (job #902266)
Cod sursa(job #902266)
using namespace std;
#define min(a,b) ((a)<(b)?(a):(b))
#include<iostream>
#include<fstream>
ifstream f("energii.in");
ofstream g("energii.out");
int ga,n,retval;
int wg[5001],pg[5001];
int dp[12000];
int main()
{
f>>n;
f>>ga;
int i;
for(i=1; i<=n; i++)
{
f>>wg[i]>>pg[i];
}
dp[0]=1;
for(i = 1; i <= n;i++)
for( int j=5100; j >= 0; j--)
{
if(dp[j])
if( !dp[j+wg[i]]||dp[j+wg[i]]>dp[j]+pg[i] )
dp[j+wg[i]] = dp[j] + pg[i];
}
int s=2*5100;
for(i=ga;i<2*5100;i++)
if(dp[i])
s=min(s,dp[i]);
if(s==2*5100)
s=0;
g<<s-1;
}