Submission #1358064

#TimeUsernameProblemLanguageResultExecution timeMemory
1358064lyra_g13Catfish Farm (IOI22_fish)C++20
9 / 100
16 ms9032 KiB
#include "fish.h"
#include <bits/stdc++.h>
using ll = long long;
using namespace std;

long long max_weights(int n, int m, vector<int> x, vector<int> y, vector<int> w) {

  vector<ll> a(n + 1);
  for (int i = 0; i < w.size(); i++) {
    a[x[i]] = w[i];
  }

  vector<vector<ll>> dp(n + 1, vector<ll>(2));

  // 0 - empty , 1 - block

  dp[0][1] = 0;
  dp[0][0] = 0;

  dp[1][0] = a[1];
  dp[1][1] = a[0];
  for (int i = 2; i <= n; i++) {
    dp[i][0] = max(dp[i][0], dp[i - 1][0]);
    dp[i][0] = max(dp[i][0], dp[i - 1][1] + a[i]);

    dp[i][1] = max(dp[i][1], dp[i - 1][1]);
    dp[i][1] = max(dp[i][1], dp[i - 2][1] + a[i - 1]);
    dp[i][1] = max(dp[i][1], dp[i - 2][0] + a[i - 1]);
  }

  return max(dp[n-1][0], dp[n-1][1]);
};
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...