Cod sursa(job #2867453)

Utilizator pctirziuTirziu Petre pctirziu Data 10 martie 2022 12:51:56
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>

using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
const int INF = 1e9 + 7;
int prof[5005], g[5005], dp[10005];
int main()
{
    int n, i, j, gmax;
    cin >> n >> gmax;
    for(i = 1; i <= n; i++)
        cin >> g[i] >> prof[i];
    int ans = 0;
    for(i = 1; i <= n; i++){
        for(j = gmax - g[i]; j >= 0; j--)
            if(dp[j + g[i]] < dp[j] + prof[i]){
                dp[j + g[i]] = dp[j] + prof[i];
                ans = max(dp[j + g[i]], ans);
            }
    }
    cout << ans;
    return 0;
}