Submission #1239847

#TimeUsernameProblemLanguageResultExecution timeMemory
1239847nikulid메기 농장 (IOI22_fish)C++20
6 / 100
48 ms8008 KiB
#include "fish.h"

#include <vector>

using namespace std;

#define ll long long

long long max_weights(int N, int M, vector<int> X, vector<int> Y, vector<int> W) {
	ll rightsum=0, leftsum=0;;
	vector<int> left(N, 0), right(N, 0); // v[0] = bottom, ...

	for(int i=0; i<M; i++){
		if(X[i]==0){
			left[Y[i]] = W[i];
			leftsum += W[i];
		} else{
			right[Y[i]] = W[i];
			rightsum += W[i];
		}
	}
	
	if(N==2) return max(leftsum,rightsum);
	// we could place a pier on the right (x=2 / third column)...
	ll cur_val = rightsum;
	ll answer = cur_val;
	for(int y=0; y<N; y++){
		// what if we built a pier on the 2nd column which has height y+1?
		cur_val -= right[y];
		cur_val += left[y];
		answer = max(answer, cur_val);
	}
	return answer;
}
#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...