Submission #780243

#TimeUsernameProblemLanguageResultExecution timeMemory
780243andecaandeciKnapsack (NOI18_knapsack)C++17
17 / 100
2 ms1108 KiB
#include <bits/stdc++.h>
using namespace std;

int t, n, val[100005], cost[100005], remain[100005], dp[100005][2005];

int main() {
  cin >> t >> n;
  for (int i = 1; i <= n; i++) cin >> val[i] >> cost[i] >> remain[i];

  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= t; j++) {
      dp[i][j] = dp[i-1][j];
      if (j >= cost[i]) dp[i][j] = max(dp[i][j], dp[i-1][j-cost[i]]+val[i]);
    }
  }

  // for (int i = 1; i <= n; i++) {
  //   for (int j = 0; j <= t; j++) {
  //     cout << dp[i][j] << "	";
  //   }
  //   cout << endl;
  // }

  cout << dp[n][t] << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...