Pagini recente » Cod sursa (job #2757366) | Cod sursa (job #573459) | Cod sursa (job #2526833) | Cod sursa (job #533631) | Cod sursa (job #1365827)
#include <iostream>
#include <fstream>
using namespace std;
int t[11000][2];
int mat[5001][5001];
ifstream f("energii.in");
ofstream h("energii.out");
int main()
{
int n,g;
f>>n;
f>>g;
// cout<<n<<" ";
for(int i=1;i<=n;i++)
{
int j,k;
f>>j;
f>>k;
t[i][0]=j;
t[i][1]=k;
}
int d[1000];
for(int i=1;i<=n;i++)
{
for(int j=1;j<=g;j++)
mat[i][j]=99999999;
}
mat[0][0]=0;
for(int i=1;i<=n;i++)
{
for(int j=g;j>=0;j--)
{
if(mat[i-1][j]!=99999999){
if(j+t[i][0]>=g)
{
if(mat[i-1][j]+t[i][1]<mat[i-1][g])
{
mat[i][g]= mat[i-1][j]+t[i][1];
}
}
else
{
mat[i][j]=min(mat[i-1][j+t[i][0]]+t[i][1],mat[i-1][j]);
}
}
}
}
if(mat[n][g]!=99999999)
h<<mat[n][g];
else
h<<"-1";
cout << "Hello world!" << endl;
return 0;
}