# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
303257 | Kevin_Zhang_TW | Comparing Plants (IOI20_plants) | C++17 | 0 ms | 0 KiB |
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<bits/stdc++.h>
#define pb emplace_back
using namespace std;
using ll = long long;
#ifdef KEV
#define DE(a, b) cerr << #a << ' ' << a << b
void debug(auto L, auto R) { while (L != R) cerr << *L << " \n"[L+1==R], ++L; }
#else
#define DE(...) 0
void debug(...) {}
#endif
const int maxn = 300010;
int nxt[maxn], n, r[maxn], k;
set<pair<int,int>> win;
int F(int i) { return i % n; }
void init(int k, std::vector<int> r) {
::k = k;
n = r.size();
for (int i = 0;i < n;++i)
win.insert( r[i]? {F(i+1), i} : {i, F(i+1)});
return;
}
int compare_plants(int x, int y) {
if (win.count({x, y}))
return 1;
if (win.count({y, x}))
return -1;
return 0;
}