Cod sursa(job #3301324)
| Utilizator | Data | 24 iunie 2025 16:29:41 | |
|---|---|---|---|
| Problema | Problema rucsacului | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include <fstream>
const int GMAX=1e4+5;
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int dp[GMAX];
int n,c,g,p,maxi;
int main()
{
cin>>n>>c;
int t,i;
for(t=1;t<=c;t++) dp[t]=-1;
for(t=1;t<=n;t++)
{
cin>>g>>p;
for(i=c;i>=g;i--)
{
dp[i]=max(dp[i],dp[i-g]+p);
}
}
for(i=1;i<=c;i++) maxi=max(maxi,dp[i]);
cout<<maxi<<endl;
return 0;
}
