# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
229670 | DrSwad | Swap (BOI16_swap) | C++17 | 101 ms | 7544 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;
#ifdef LOCAL
#include "/Users/swad/Desktop/CP/debug.h"
#endif
const int N = int(2e5) + 10;
int n;
int a[N << 1];
int at[N << 1];
int to[N << 1];
int vis[N << 1];
void setVis(int at, int val) {
if (vis[at]) return;
vis[at] = val;
while (at) {
if (vis[at << 1] == 1) to[at] = to[at << 1];
else if (vis[at << 1 | 1] != 1) to[at] = at;
else if (vis[at << 1] == -1) to[at] = to[at << 1 | 1];
else to[at] = min(to[at << 1], to[at << 1 | 1]);
at >>= 1;
}
}
void cancelVis(int from) {
Compilation message (stderr)
# | 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... |