Cod sursa(job #2505901)
Utilizator | Data | 7 decembrie 2019 11:41:25 | |
---|---|---|---|
Problema | Energii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n,k,a,b,x[10005];
int main()
{
fin>>n>>k;
for(int i=1;i<=k;i++)
x[i]=2000000000;
for(int i=1;i<=n;i++){
fin>>a>>b;
for(int j=k;j>0;j--){
if(j<a)
x[j]=min(x[j],b);
else
x[j]=min(x[j],x[j-a]+b);
}
}
if(x[k]==2000000000)
x[k]=-1;
fout<<x[k];
return 0;
}