This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "plants.h"
#include <vector>
using namespace std;
vector<int> range;
void init(int k, vector<int> r) 
{
	int n = r.size();
	range.resize(n);
	
	int i = 0;
	while(i < n)
	{
		int cur = i;
		while(i < n && r[i] > 0) i ++;
		if(i == n)
		{
			i = 0;
			while(r[i] > 0) i ++;
		}
		for(int j = cur; j != i; j = (j + 1) % n) range[j] = i;
	}
	return;
}
int compare_plants(int x, int y) 
{
	int fac = 1;
	if(x > y)
	{
		swap(x, y);
		fac = -1;
	}	
	int ans = 0;
	if(range[x] > y || range[x] < x) ans = -1;
	else if(range[y] > x) ans = 1;
	return fac * ans;
}
| # | 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... |