Pagini recente » Cod sursa (job #361392) | Cod sursa (job #68898) | Cod sursa (job #262538) | Cod sursa (job #618792) | Cod sursa (job #2239813)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in") ;
ofstream fout("energii.out") ;
int dp[5][5005] ;
int e[1005] , c[1005] ;
int main()
{
int i , j , g , w , p , q ;
fin >> g >> w ;
for ( i = 1 ; i <= g ; i++ )
fin >> e[i] >> c[i] ;
p = 0 ;
q = 1 ;
for ( i = 1 ; i <= w ; i++ )
{
dp[p][i] = 0x3f3f3f3f ;
dp[q][i] = 0x3f3f3f3f ;
}
for ( i = 1 ; i <= g ; i++ )
{
p = 1-p ;
q = 1-q ;
for ( j = 1 ; j <= w ; j++ )
{
if ( j-e[i] >= 0 )
dp[p][j] = min(dp[q][j],dp[q][j-e[i]] + c[i]) ;
else
dp[p][j] = min(dp[q][j],c[i]) ;
}
}
if ( dp[p][w] == 0x3f3f3f3f )
fout << "-1" ;
else
fout << dp[p][w] ;
}