#include <bits/stdc++.h>
#include "island.h"
using namespace std;
int par[305];
int dsu(int a){
return par[a] = (a == par[a] ? a : dsu(par[a]));
}
void solve(int n, int q) {
iota(par, par + 305, 0);
vector <pair <int, int>> edge;
for (int i = 1; i < n; i++) {
int u = query(1, i);
if (dsu(u) == dsu(1)) continue;
int curr = 1;
while (1) {
int v = query(u, curr);
edge.emplace_back(u, v);
par[dsu(u)] = dsu(v);
curr++;
if (dsu(1) == dsu(u)) break;
}
}
for (auto [u, v] : edge) answer(u, v);
}
# | 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... |