Cod sursa(job #2721786)

Utilizator sichetpaulSichet Paul sichetpaul Data 12 martie 2021 11:25:35
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <bits/stdc++.h>
#define Nmax 10005
#define INF -1e9
using namespace std;

ifstream fin("rucsac.in");
ofstream fout("rucsac.out");

int N, G, ans;
int dp[Nmax];
int main()
{
    fin >> N >> G;
    for (int i = 1; i <= G; ++i)
        dp[i] = INF;

    while (N--) {
        int cnt, add;
        fin >> cnt >> add;
        for (int i = G; i >= cnt; --i)
          if (dp[i - cnt] != INF) {
                dp[i] = max(dp[i], dp[i - cnt] + add);
                ans = max(ans, dp[i]);
            }
    }
      fout << ans << '\n';

    return 0;
}