Task: | Distances |
Sender: | fishy15 |
Submission time: | 2021-01-31 02:31:15 +0200 |
Language: | C++ (C++17) |
Status: | COMPILE ERROR |
Compiler report
input/code.cpp: In function 'void solve()': input/code.cpp:39:5: error: 'function' was not declared in this scope function<void(int, int, bool)> dfs = [&](int v, int p, bool ok) { ^~~~~~~~ input/code.cpp:39:5: note: suggested alternative: 'union' function<void(int, int, bool)> dfs = [&](int v, int p, bool ok) { ^~~~~~~~ union input/code.cpp:39:33: error: expression list treated as compound expression in functional cast [-fpermissive] function<void(int, int, bool)> dfs = [&](int v, int p, bool ok) { ^ input/code.cpp:39:14: error: expected primary-expression before 'void' function<void(int, int, bool)> dfs = [&](int v, int p, bool ok) { ^~~~ input/code.cpp:49:5: error: 'dfs' was not declared in this scope dfs(0, 0, true); ^~~ input/code.cpp:49:5: note: suggested alternative: 'ffs' dfs(0, 0, true); ^~~ ffs
Code
#include <iostream> #include <iomanip> #include <fstream> #include <vector> #include <array> #include <algorithm> #include <utility> #include <map> #include <queue> #include <set> #include <cmath> #include <cstdio> #include <cstring> #define ll long long #define ld long double #define eps 1e-8 #define MOD 1000000007 #define INF 0x3f3f3f3f #define INFLL 0x3f3f3f3f3f3f3f3f // change if necessary #define MAXN 1000000 using namespace std; void solve() { int n; cin >> n; vector<vector<int>> adj(n); for (int i = 0; i < n - 1; i++) { int a, b; cin >> a >> b; a--; b--; adj[a].push_back(b); adj[b].push_back(a); } function<void(int, int, bool)> dfs = [&](int v, int p, bool ok) { if (ok) cout << v + 1 << ' '; for (int e : adj[v]) { if (e != p) { dfs(e, v, !ok); } } if (!ok) cout << v + 1 << ' '; }; dfs(0, 0, true); cout << '\n'; } int main() { cin.tie(0)->sync_with_stdio(0); int t; cin >> t; while (t--) solve(); return 0; }