Pagini recente » Cod sursa (job #124537) | Cod sursa (job #784299) | Cod sursa (job #166525) | Cod sursa (job #176148) | Cod sursa (job #1172276)
#include <fstream>
using namespace std;
int p[1007],c[5007],d[1007][1007],n,g;
int main(){
int i,j,sum;
ifstream fin("energii.in");
ofstream fout("energii.out");
fin>>n>>g;
for(i=1;i<=n;i++)
fin >>p[i]>>c[i];
for(i=1;i<=g;i++) d[0][i]=999999;
for(i=1;i<=n;i++)
for(j=1;j<=g;j++)
{
d[i][j]=d[i-1][j];
sum=d[i][j];
if(d[i-1][j-p[i]]+c[i] < d[i][j])
sum=sum-p[i-1]+p[i];
d[i][j] = min(d[i][j],d[i-1][j-p[i]]+c[i]);
}
if(d[n][g] == 999999) fout<<"-1\n";
else
fout <<d[n][g]<<"\n";
fin.close();
fout.close();
return 0;
}