Submission #1212727

#TimeUsernameProblemLanguageResultExecution timeMemory
1212727banganCatfish Farm (IOI22_fish)C++20
0 / 100
20 ms3256 KiB
#include "fish.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#define pb push_back
#define all(a) a.begin(), a.end()

long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y, std::vector<int> W) {
	vector<int> ord;
	for (int i=0; i<M; i++) ord.pb(i);
	sort(all(ord), [&](int i, int j) {
		return Y[i] < Y[j];
	});
	vector<ll> dp(M);
	dp[0] = W[ord[0]];
	if (1<M) dp[1] = max(W[ord[0]], W[ord[1]]);
	if (2<M) dp[2] = max({W[ord[1]], W[ord[0]]+W[ord[2]]});
	for (int i=3; i<M; i++) {
		dp[i] = dp[i-2] + W[ord[i-1]];
		dp[i] = max(dp[i], dp[i-1]);
		dp[i] = max(dp[i], dp[i-3] + W[ord[i-2]] + W[ord[i]]);
	}
	return dp.back();
}
#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...