Pagini recente » Cod sursa (job #2350691) | Rating Nastasa-Baras Luca (Lolluckestar) | Cod sursa (job #2717336) | Cod sursa (job #2730754) | Cod sursa (job #679054)
Cod sursa(job #679054)
#include<fstream>
#include<algorithm>
#define INF 0x3f3f3f3f
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int Cost[1001][5001];
int N, G, P[1001], C[1001];
int main()
{
int i, j;
in >> N;
in >> G;
for(i = 1; i <= N; i++)
in >> P[i] >> C[i];
for(i = 1; i <= G; i++)
if( i <= P[1] )
Cost[1][i] = C[1];
for(i = 1; i <= N; i++)
for(j = 1; j <= G; j++)
if( !Cost[i][j] )
Cost[i][j] = INF;
for(i = 2; i <= N; i++)
for(j = 1; j <= G; j++)
if( P[i] <= j )
Cost[i][j] = min(Cost[i - 1][j], Cost[i - 1][j - P[i]] + C[i]);
else
Cost[i][j] = Cost[i-1][j];
if( Cost[N][G] == INF )
out << "-1";
else
out << Cost[N][G];
}