# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
532356 | Alex_tz307 | Izbori (COCI22_izbori) | C++17 | 142 ms | 6980 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 <bits/stdc++.h>
using namespace std;
const int kN = 1 << 18;
int a[kN];
int64_t ans, f[kN << 1];
bitset<kN> used;
void solve(int l, int r) {
if (l == r) {
++ans;
return;
}
int mid = (l + r) >> 1;
solve(l, mid);
solve(mid + 1, r);
vector<int> candidates;
for (int i = l; i <= r; ++i) {
f[a[i]] = 0;
used[a[i]] = false;
}
for (int i = mid; i >= l; --i) {
if (++f[a[i]] > (mid - i + 1) / 2 && !used[a[i]]) {
candidates.emplace_back(a[i]);
used[a[i]] = true;
}
}
for (int i = l; i <= mid; ++i) {
f[a[i]] = 0;
# | 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... |