Pagini recente » Cod sursa (job #159760) | Cod sursa (job #3246671) | Cod sursa (job #2688898) | Cod sursa (job #1977693) | Cod sursa (job #1600302)
#include<fstream>
#include<cstring>
#define inf 0x7f7f7f7f
using namespace std;
int n, t, i, j, cant, cost, D[5002], cmax;
ifstream in("energii.in");
ofstream out("energii.out");
int main()
{
in>>n>>t;
memset(D, 127, sizeof(D));
D[0]=0;
for(j=1; j<=n; j++)
{
in>>cant>>cost;
for(i=cmax; i>=0; i--)
{
if(i+cant<=t && D[i+cant]>D[i]+cost)
{
if(i+cant<=cmax)
cmax=i+cant;
D[i+cant]=D[i]+cost;
}
}
}
D[t]!=inf?out<<D[t]:out<<"-1";
return 0;
}