神秘的神秘 • 14天前
using namespace std; vector a[1005]; bool vv[1005]; int n, m, s; int cnt;
void dfs(int u) {
vv[u] = true;
cnt++;
cout << u << " ";
for (int v : a[u]) {
if (!vv[v]) {
dfs(v);
cout << u << " ";
}
}
}
int main() {
int t;
cin >> t;
while (t--) {
cin >> n >> m >> s;
for (int i = 1; i <= n; ++i) {
a[i].clear();
vv[i] = false;
}
cnt = 0;
for (int i = 0; i < m; ++i) {
int u, v;
cin >> u >> v;
a[u].push_back(v);
a[v].push_back(u);
}
for (int i = 1; i <= n; ++i) {
sort(a[i].begin(), a[i].end());
}
dfs(s);
if (cnt < n) {
cout << "0";
}
cout << endl;
}
return 0;
}
评论:
请先登录,才能进行评论