dreaming.cpp: In function 'int travelTime(int, int, int, int*, int*, int*)':
dreaming.cpp:27:5: error: 'unordered_set' was not declared in this scope
27 | unordered_set<int> child_edges[N];
| ^~~~~~~~~~~~~
dreaming.cpp:27:19: error: expected primary-expression before 'int'
27 | unordered_set<int> child_edges[N];
| ^~~
dreaming.cpp:33:9: error: 'child_edges' was not declared in this scope
33 | child_edges[A[i]].insert(i);
| ^~~~~~~~~~~
dreaming.cpp:40:46: error: 'child_edges' was not declared in this scope
40 | if(components[current_root] != -1 || child_edges[current_root].size() > 1){
| ^~~~~~~~~~~
dreaming.cpp:44:12: error: 'child_edges' was not declared in this scope
44 | if(child_edges[current_root].empty()){
| ^~~~~~~~~~~
dreaming.cpp:52:9: error: 'forward_list' was not declared in this scope
52 | forward_list<int> children = {current_root};
| ^~~~~~~~~~~~
dreaming.cpp:52:22: error: expected primary-expression before 'int'
52 | forward_list<int> children = {current_root};
| ^~~
dreaming.cpp:53:16: error: 'children' was not declared in this scope
53 | while(!children.empty()){
| ^~~~~~~~
dreaming.cpp:57:28: error: 'child_edges' was not declared in this scope
57 | for(int edge : child_edges[child]){
| ^~~~~~~~~~~
dreaming.cpp:74:18: error: 'tuple' was not declared in this scope
74 | forward_list<tuple<int, bool> > height_calculation;
| ^~~~~
dreaming.cpp:74:5: error: 'forward_list' was not declared in this scope
74 | forward_list<tuple<int, bool> > height_calculation;
| ^~~~~~~~~~~~
dreaming.cpp:74:24: error: expected primary-expression before 'int'
74 | forward_list<tuple<int, bool> > height_calculation;
| ^~~
dreaming.cpp:76:9: error: 'height_calculation' was not declared in this scope
76 | height_calculation.push_front(make_tuple(root_vertices[i], false));
| ^~~~~~~~~~~~~~~~~~
dreaming.cpp:76:39: error: 'make_tuple' was not declared in this scope
76 | height_calculation.push_front(make_tuple(root_vertices[i], false));
| ^~~~~~~~~~
dreaming.cpp:78:12: error: 'height_calculation' was not declared in this scope
78 | while(!height_calculation.empty()){
| ^~~~~~~~~~~~~~~~~~
dreaming.cpp:81:9: error: 'tie' was not declared in this scope
81 | tie(vertex, status) = height_calculation.front();
| ^~~
dreaming.cpp:84:28: error: 'child_edges' was not declared in this scope
84 | for(int edge : child_edges[vertex]){
| ^~~~~~~~~~~
dreaming.cpp:92:43: error: 'make_tuple' was not declared in this scope
92 | height_calculation.push_front(make_tuple(vertex, true));
| ^~~~~~~~~~
dreaming.cpp:93:28: error: 'child_edges' was not declared in this scope
93 | for(int edge : child_edges[vertex]){
| ^~~~~~~~~~~
dreaming.cpp:98:5: error: 'vector' was not declared in this scope
98 | vector<int> max_paths[N - M];
| ^~~~~~
dreaming.cpp:98:12: error: expected primary-expression before 'int'
98 | vector<int> max_paths[N - M];
| ^~~
dreaming.cpp:101:9: error: 'max_paths' was not declared in this scope
101 | max_paths[component] = {root};
| ^~~~~~~~~
dreaming.cpp:107:13: error: 'child_edges' was not declared in this scope
107 | child_edges[last_vertex].erase(height_edges[last_vertex]);
| ^~~~~~~~~~~
dreaming.cpp:112:25: error: 'max_paths' was not declared in this scope
112 | int best_upward[max_paths[component].size()];
| ^~~~~~~~~
dreaming.cpp:113:9: error: 'best_upward' was not declared in this scope
113 | best_upward[0] = 0;
| ^~~~~~~~~~~
dreaming.cpp:116:28: error: 'child_edges' was not declared in this scope
116 | for(int edge : child_edges[max_paths[component][i]]){
| ^~~~~~~~~~~
dreaming.cpp:125:18: error: expected primary-expression before 'int'
125 | forward_list<int> eccentricity_calculation;
| ^~~
dreaming.cpp:126:16: error: expected primary-expression before 'int'
126 | for(vector<int> max_path : max_paths){
| ^~~
dreaming.cpp:131:5: error: expected primary-expression before 'while'
131 | while(!eccentricity_calculation.empty()){
| ^~~~~
dreaming.cpp:130:6: error: expected ';' before 'while'
130 | }
| ^
| ;
131 | while(!eccentricity_calculation.empty()){
| ~~~~~
dreaming.cpp:131:5: error: expected primary-expression before 'while'
131 | while(!eccentricity_calculation.empty()){
| ^~~~~
dreaming.cpp:130:6: error: expected ')' before 'while'
130 | }
| ^
| )
131 | while(!eccentricity_calculation.empty()){
| ~~~~~
dreaming.cpp:126:8: note: to match this '('
126 | for(vector<int> max_path : max_paths){
| ^
dreaming.cpp:131:12: error: 'eccentricity_calculation' was not declared in this scope
131 | while(!eccentricity_calculation.empty()){
| ^~~~~~~~~~~~~~~~~~~~~~~~
dreaming.cpp:134:24: error: 'child_edges' was not declared in this scope
134 | for(int edge : child_edges[vertex]){
| ^~~~~~~~~~~