#include <bits/stdc++.h>
#include "highway.h"
using namespace std;
using ll = long long;
using pii = pair<int, int>;
vector<vector<int>> adj;
int last;
void dfs(int n, int p=-1) {
last = n;
for (auto x : adj[n]) {
if (x==p) continue;
dfs(x, n);
}
}
void find_pair(int n, vector<int> U, vector<int> V, int A, int B) {
int m = U.size();
vector<int> edges;
vector<int> query(m, 0);
ll w = ask(query);
adj.resize(n);
for (int i=0; i<m; i++) {
query[i] = 1;
ll w2 = ask(query);
if (w2 == w-A+B) {
edges.push_back(i);
}
query[i] = 0;
}
for (auto x : edges) {
int a = U[x];
int b = V[x];
adj[a].push_back(b);
adj[b].push_back(a);
}
last = 0;
dfs(0);
answer(0, last);
}
# | 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... |