Pagini recente » Cod sursa (job #1067375) | Cod sursa (job #1882580) | Cod sursa (job #1465494) | Cod sursa (job #1543219) | Cod sursa (job #679048)
Cod sursa(job #679048)
#include<fstream>
#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 <= N; i++)
for(j = 1; j <= G; 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];
}