Submission #1167311

#TimeUsernameProblemLanguageResultExecution timeMemory
1167311gygComparing Plants (IOI20_plants)C++20
5 / 100
45 ms6472 KiB
#include "plants.h" #include <bits/stdc++.h> using namespace std; #define arr array #define vec vector const int N = 2e5 + 5; int n, k; arr<int, N> a; int md(int i) { return (i % n == 0) ? n : i % n; } arr<int, N> vl, sm; int qry(int l, int r) { if (l > r) return 0; return sm[r] - sm[l - 1]; } void sm_cmp() { for (int i = 1; i <= n; i++) { vl[i] = a[md(i - 1)]; sm[i] = sm[i - 1] + vl[i]; } } void init(int _k, vec<int> _a) { n = _a.size(), k = _k; for (int i = 1; i <= n; i++) a[i] = _a[i - 1]; sm_cmp(); } // 0 indexed int compare_plants(int i, int j) { i++, j++; int x = qry(i + 1, j), y = qry(j + 1, n) + qry(1, i); if (x == 0 || y == n - j + i) return 1; if (x == j - i || y == 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...