Cod sursa(job #2613405)
| Utilizator | Data | 9 mai 2020 17:26:15 | |
|---|---|---|---|
| Problema | Energii | Scor | 5 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <fstream>
using namespace std;
ifstream cin("energii.in");
ofstream cout("energii.out");
int dp[1001][5001];
struct ura{
short int e,c;
};
ura v[1001];
int main()
{
int n,e,rez=0,i,j;
cin>>n>>e;
for(i=1;i<=n;i++)
{
cin>>v[i].e>>v[i].c;
}
for(i=1;i<=n;i++)
for(j=1;j<=e;j++)
{
dp[i][j]=dp[i][max(0,j-v[i].e)]+v[i].c;
}
for(i=1;i<=n;i++)
{
if(dp[i][e]){
if(rez==0)
rez=dp[i][e];
else
rez=min(rez,dp[i][e]);
}
}
if(rez==0)
cout<<-1;
else
cout<<rez;
return 0;
}
