Submission #825823

#TimeUsernameProblemLanguageResultExecution timeMemory
825823amunduzbaevComparing Plants (IOI20_plants)C++17
5 / 100
64 ms7896 KiB
#include "plants.h"

#include "bits/stdc++.h"
using namespace std;

int n;
vector<int> pref;

void init(int k, vector<int> r) {
	n = r.size();
	pref.resize(n);
	for(int i=0;i<n;i++){
		if(i) pref[i] = pref[i - 1];
		pref[i] += r[i];
	}
	
	return;
}

int get(int x, int y){
	return pref[y] - (x ? pref[x - 1] : 0);
}

int compare_plants(int x, int y) {
	if(get(x, y - 1) == 0){
		return 1;
	}
	if(get(x, y - 1) == y - x){
		return -1;
	}
	
	int cnt = get(y, n - 1);
	cnt += (x ? get(0, x - 1) : 0);
	if(cnt == n - y + x){
		return 1;
	} if(cnt == 0) {
		return -1;
	}
	
	return 0;
}
#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...