#include "fish.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
void chmax(ll& x, ll y) {
x = max(x, y);
}
long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y,
std::vector<int> W) {
vector<ll> a(N + 3);
for (int i = 0; i < M; ++i) {
a[X[i] + 1] += W[i];
}
vector<ll> dp1(N + 2), dp2(N + 2);
const ll INF = 1e18;
dp2[0] = dp2[1] = -INF;
for (int i = 0; i < N; ++i) {
dp1[i + 2] = max(dp1[i + 1], dp2[i + 1] + a[i + 1]);
dp2[i + 2] = max(dp2[i + 1], max(dp1[i], dp2[i]) + a[i]);
}
ll res = max(dp1[N + 1], dp2[N + 1]);
return res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |