题解:P10440 [JOIST 2024] 环岛旅行 / Island Hopping
dangerous_tDp · · 题解
好像比较显然。
一条边一定是父子关系,记为
先想想求
这使得我们查询出
现在审视代码复杂度:我们从
#include <bits/stdc++.h>
using namespace std;
const int N = 310;
int fa[N];bool vis[N];
int query(int v, int k);
void answer(int x, int y);
void solve(int N, int L){
vis[1] = 1;
for (int i = 1; i < N; i ++){
int u = query(1, i), j = 1;
vis[u] = 1;
while (!fa[u]){
int x = query(u, j ++);
(vis[x] ? fa[u] = x : fa[x] = u);
}
}for (int i = 2; i <= N; i ++)
answer(i, fa[i]);
}
第一次写交互\bx