Submission #1179036

#TimeUsernameProblemLanguageResultExecution timeMemory
1179036the_coding_poohComparing Plants (IOI20_plants)C++20
5 / 100
46 ms7372 KiB
#include "plants.h" #include <bits/stdc++.h> using namespace std; const int SIZE = 2e5 + 5; long long pre[2 * SIZE]; int N; long long circular_sum(int l, int r){ if(l > r) return circular_sum(l, N + r); if(l == -1) return pre[r]; return pre[r] - pre[l]; } void init(int k, vector<int> r) { N = r.size(); for (int i = 0; i < N; i++){ pre[i] = r[i]; pre[i + N] = r[i]; } for (int i = 1; i < 2 * N; i++){ pre[i] += pre[i - 1]; } return; } int compare_plants(int x, int y) { if(circular_sum(y - 1, x - 1) == (x - y + N)) return 1; if (circular_sum(x - 1, y - 1) == 0) return 1; if (circular_sum(x - 1, y - 1) == (y - x)) return -1; if(circular_sum(y - 1, x - 1) == 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...