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 "island.h"
#include <bits/stdc++.h>
using namespace std;
void solve(int N, int L) {
vector<set<int>> adj(N+1);
vector<int> myMin(N+1);
for (int node = 1; node <= N; ++node) {
myMin[node] = query(node, 1);
adj[node].insert(myMin[node]);
adj[myMin[node]].insert(node);
}
for (int node = 1; node <= N; ++node) {
set<int> bad = adj[myMin[node]];
for (int k = 2; k <= N-1; ++k) {
int voisin = query(node, k);
if (bad.count(voisin))
break;
adj[node].insert(voisin);
adj[voisin].insert(node);
for (int x : adj[voisin])
bad.insert(x);
}
}
for (int node = 1; node <= N; ++node) {
for (int voisin : adj[node]) if (node < voisin) {
answer(node, voisin);
}
}
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |