Submission #1236247

#TimeUsernameProblemLanguageResultExecution timeMemory
1236247caacrugonPrize (CEOI22_prize)C++20
Compilation error
0 ms0 KiB
include <bits/stdc++.h> using namespace std; #define ll long long #define mkp make_pair bool dfsMinimunTree(ll u, ll parent, set<ll>&s, vector<vector<ll>>&tree2, vector<vector<pair<ll,ll>>>&newtree2){ bool co=(s.count(u)>0); for(ll i=0;i<tree2[u].size();i++){ if(tree2[u][i]==parent)continue; if(dfsMinimunTree(tree2[u][i],u,s,tree2,newtree2)){ co=true; newtree2[u].push_back(mkp(tree2[u][i],0)); newtree2[tree2[u][i]].push_back(mkp(u,0)); } } return co; } void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){ up[0][u]=p; for(int i=0;i<T[u].size();i++){ if(T[u][i].first==p)continue; depth[T[u][i].first]=depth[u]+1; dist[T[u][i].first]=dist[u]+T[u][i].second; dfsLCA(T[u][i].first,u,T,up,depth,dist); } } void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){ ll LOG=1; while((1<<LOG)<=K)LOG++; up.assign(LOG,vector<ll>(N+1,0)); depth.assign(N+1,0); dist.assign(N+1,0); dfsLCA(root,0,T,up,depth,dist); for(ll i=1;i<LOG;i++){ for(ll j=1;j<=N;j++){ up[i][j]=up[i-1][j]?up[i-1][up[i-1][j]]:0; } } } ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){ if(depth[a]<depth[b]) swap(a,b); ll diff=depth[a]-depth[b]; ll LOG=up.size(); for(ll i=0;i<LOG;i++)if(diff & (1<<i))a=up[i][a]; if (a==b) return a; for(ll i=LOG-1;i>=0;i--){ if(up[i][a] && up[i][a]!=up[i][b]){ a=up[i][a]; b=up[i][b]; } } return up[0][a]; } int main(){ ios_base::sync_with_stdio(false); cin.tie(0);cout.tie(0); ll N,K,Q,T; cin>>N>>K>>Q>>T; vector<vector<ll>> tree1(N+1,vector<ll>(0)),tree2(N+1,vector<ll>(0)); ll r1=0,r2=0; for(ll i=1;i<N+1;i++){ ll a; cin>>a; if(a==-1){ r1=i; continue; } tree1[a].push_back(i); tree1[i].push_back(a); } for(ll i=1;i<N+1;i++){ ll a; cin>>a; if(a==-1){ r2=i; continue; } tree2[a].push_back(i); tree2[i].push_back(a); } queue<ll> q; q.push(r1); vector<bool> visited(N+1,false); ll co=K; co--; cout<<r1<<" "; vector<vector<pair<ll,ll>>> newtree1(N+1,vector<pair<ll,ll>>(0)),newtree2(N+1,vector<pair<ll,ll>>(0)); set<ll> s; s.insert(r1); while(q.size() && co>0){ ll nodo=q.front(); q.pop(); visited[nodo]=true; for(ll i=0;i<tree1[nodo].size() && co>0;i++){ if(visited[tree1[nodo][i]])continue; newtree1[nodo].push_back(mkp(tree1[nodo][i],0)); co--; q.push(tree1[nodo][i]); s.insert(tree1[nodo][i]); cout<<tree1[nodo][i]<<" "; } } dfsMinimunTree(r2,0,s,tree2,newtree2); vector<pair<ll,ll>> edges; for(ll i=1;i<=N;i++){ for(ll j=0;j<newtree1[i].size();j++){ if(i!=newtree1[i][j].first) edges.push_back(mkp(i,newtree1[i][j].first)); } } cout<<"\n"; for(ll i=0;i<edges.size();i++){ cout<<"? "<<edges[i].first<<" "<<edges[i].second<<'\n'; } cout<<"!\n"; cout<<flush; fflush(stdout); for(ll i=0;i<edges.size();i++){ ll d1u,d1v,d2u,d2v; cin>>d1u>>d1v>>d2u>>d2v; ll peso1=d1u+d1v; ll peso2=d2u+d2v; for(ll j=0;j<newtree1[edges[i].first].size();j++){ if(newtree1[edges[i].first][j].first==edges[i].second){ newtree1[edges[i].first][j].second=peso1; break; } } for(ll j=0;j<newtree1[edges[i].second].size();j++){ if(newtree1[edges[i].second][j].first==edges[i].first){ newtree1[edges[i].second][j].second=peso1; break; } } for(ll j=0;j<newtree2[edges[i].first].size();j++){ if(newtree2[edges[i].first][j].first==edges[i].second){ newtree2[edges[i].first][j].second=peso2; break; } } for(ll j=0;j<newtree2[edges[i].second].size();j++){ if(newtree2[edges[i].second][j].first==edges[i].first){ newtree2[edges[i].second][j].second=peso2; break; } } } vector<vector<ll>> up1, up2; vector<ll> depth1, depth2, dist1, dist2; BLCA(newtree1,up1,depth1,dist1,r1,N,K); BLCA(newtree2,up2,depth2,dist2,r2,N,K); vector<pair<ll,ll>> questions(T); for(int i=0;i<T;i++){ ll u,v; cin>>u>>v; questions[i]=mkp(u,v); } for(int i=0;i<T;i++){ ll w1=GLCA(up1,depth1,questions[i].first,questions[i].second); ll w2=GLCA(up2,depth2,questions[i].first,questions[i].second); ll ans1=dist1[questions[i].first]+dist1[questions[i].second]-2*dist1[w1]; ll ans2=dist2[questions[i].first]+dist2[questions[i].second]-2*dist2[w2]; cout<<ans1<<" "<<ans2<<"\n"; } cout<<flush; fflush(stdout); }

Compilation message (stderr)

Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:10: error: 'bits' was not declared in this scope
    1 | include <bits/stdc++.h>
      |          ^~~~
Main.cpp:1:15: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | include <bits/stdc++.h>
      |               ^~~~
      |               std
Main.cpp:1:1: error: 'include' does not name a type
    1 | include <bits/stdc++.h>
      | ^~~~~~~
Main.cpp:8:38: error: 'set' has not been declared
    8 | bool dfsMinimunTree(ll u, ll parent, set<ll>&s, vector<vector<ll>>&tree2, vector<vector<pair<ll,ll>>>&newtree2){
      |                                      ^~~
Main.cpp:8:41: error: expected ',' or '...' before '<' token
    8 | bool dfsMinimunTree(ll u, ll parent, set<ll>&s, vector<vector<ll>>&tree2, vector<vector<pair<ll,ll>>>&newtree2){
      |                                         ^
Main.cpp: In function 'bool dfsMinimunTree(long long int, long long int, int)':
Main.cpp:9:14: error: 's' was not declared in this scope
    9 |     bool co=(s.count(u)>0);
      |              ^
Main.cpp:10:18: error: 'tree2' was not declared in this scope
   10 |     for(ll i=0;i<tree2[u].size();i++){
      |                  ^~~~~
Main.cpp:12:49: error: 'newtree2' was not declared in this scope
   12 |         if(dfsMinimunTree(tree2[u][i],u,s,tree2,newtree2)){
      |                                                 ^~~~~~~~
Main.cpp:6:13: error: 'make_pair' was not declared in this scope
    6 | #define mkp make_pair
      |             ^~~~~~~~~
Main.cpp:14:35: note: in expansion of macro 'mkp'
   14 |             newtree2[u].push_back(mkp(tree2[u][i],0));
      |                                   ^~~
Main.cpp: At global scope:
Main.cpp:21:39: error: 'pair' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                       ^~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:32: error: 'vector' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                ^~~~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                       ^~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:32: error: 'vector' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                ^~~~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                       ^~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:32: error: 'vector' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                ^~~~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                       ^~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:39: error: 'pair' was not declared in this scope
Main.cpp:21:32: error: 'vector' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                ^~~~~~
Main.cpp:21:39: error: 'pair' was not declared in this scope
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                                       ^~~~
Main.cpp:21:25: error: 'vector' has not been declared
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                         ^~~~~~
Main.cpp:21:31: error: expected ',' or '...' before '<' token
   21 | void dfsLCA(ll u, ll p, vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist){
      |                               ^
Main.cpp: In function 'void dfsLCA(long long int, long long int, int)':
Main.cpp:22:5: error: 'up' was not declared in this scope; did you mean 'u'?
   22 |     up[0][u]=p;
      |     ^~
      |     u
Main.cpp:23:19: error: 'T' was not declared in this scope
   23 |     for(int i=0;i<T[u].size();i++){
      |                   ^
Main.cpp:25:9: error: 'depth' was not declared in this scope
   25 |         depth[T[u][i].first]=depth[u]+1;
      |         ^~~~~
Main.cpp:26:9: error: 'dist' was not declared in this scope
   26 |         dist[T[u][i].first]=dist[u]+T[u][i].second;
      |         ^~~~
Main.cpp: At global scope:
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:6: error: variable or field 'BLCA' declared void
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |      ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:11: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |           ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:25: error: 'pair' was not declared in this scope
Main.cpp:31:18: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                  ^~~~~~
Main.cpp:31:25: error: 'pair' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                         ^~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:30: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                              ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:33: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                 ^~
Main.cpp:31:49: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                 ^~~~~~
Main.cpp:31:49: error: 'vector' was not declared in this scope
Main.cpp:31:49: error: 'vector' was not declared in this scope
Main.cpp:31:49: error: 'vector' was not declared in this scope
Main.cpp:31:49: error: 'vector' was not declared in this scope
Main.cpp:31:42: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                          ^~~~~~
Main.cpp:31:49: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                 ^~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:56: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                        ^~
Main.cpp:31:65: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                 ^~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:72: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                        ^~
Main.cpp:31:83: error: 'vector' was not declared in this scope
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                                   ^~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:90: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                                          ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:100: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                                                    ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:109: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                                                             ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:31:115: note: in expansion of macro 'll'
   31 | void BLCA(vector<vector<pair<ll,ll>>>&T, vector<vector<ll>>&up, vector<ll>&depth, vector<ll>&dist, ll root, ll N, ll K){
      |                                                                                                                   ^~
Main.cpp:45:16: error: 'vector' was not declared in this scope
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                ^~~~~~
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:16: error: 'vector' was not declared in this scope
Main.cpp:45:9: error: 'vector' was not declared in this scope
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |         ^~~~~~
Main.cpp:45:16: error: 'vector' was not declared in this scope
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                ^~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:45:23: note: in expansion of macro 'll'
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                       ^~
Main.cpp:45:32: error: 'vector' was not declared in this scope
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                                ^~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:45:39: note: in expansion of macro 'll'
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                                       ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:45:50: note: in expansion of macro 'll'
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                                                  ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:45:56: note: in expansion of macro 'll'
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                                                        ^~
Main.cpp:45:60: error: expression list treated as compound expression in initializer [-fpermissive]
   45 | ll GLCA(vector<vector<ll>>&up, vector<ll>&depth, ll a, ll b){
      |                                                            ^
Main.cpp: In function 'int main()':
Main.cpp:61:5: error: 'ios_base' has not been declared
   61 |     ios_base::sync_with_stdio(false);
      |     ^~~~~~~~
Main.cpp:62:5: error: 'cin' was not declared in this scope
   62 |     cin.tie(0);cout.tie(0);
      |     ^~~
Main.cpp:62:16: error: 'cout' was not declared in this scope
   62 |     cin.tie(0);cout.tie(0);
      |                ^~~~
Main.cpp:65:12: error: 'vector' was not declared in this scope
   65 |     vector<vector<ll>> tree1(N+1,vector<ll>(0)),tree2(N+1,vector<ll>(0));
      |            ^~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:65:19: note: in expansion of macro 'll'
   65 |     vector<vector<ll>> tree1(N+1,vector<ll>(0)),tree2(N+1,vector<ll>(0));
      |                   ^~
Main.cpp:74:9: error: 'tree1' was not declared in this scope
   74 |         tree1[a].push_back(i);
      |         ^~~~~
Main.cpp:84:9: error: 'tree2' was not declared in this scope
   84 |         tree2[a].push_back(i);
      |         ^~~~~
Main.cpp:87:5: error: 'queue' was not declared in this scope
   87 |     queue<ll> q;
      |     ^~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:87:11: note: in expansion of macro 'll'
   87 |     queue<ll> q;
      |           ^~
Main.cpp:88:5: error: 'q' was not declared in this scope
   88 |     q.push(r1);
      |     ^
Main.cpp:89:12: error: expected primary-expression before 'bool'
   89 |     vector<bool> visited(N+1,false);
      |            ^~~~
Main.cpp:93:19: error: 'pair' was not declared in this scope
   93 |     vector<vector<pair<ll,ll>>> newtree1(N+1,vector<pair<ll,ll>>(0)),newtree2(N+1,vector<pair<ll,ll>>(0));
      |                   ^~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:93:24: note: in expansion of macro 'll'
   93 |     vector<vector<pair<ll,ll>>> newtree1(N+1,vector<pair<ll,ll>>(0)),newtree2(N+1,vector<pair<ll,ll>>(0));
      |                        ^~
Main.cpp:94:5: error: 'set' was not declared in this scope
   94 |     set<ll> s;
      |     ^~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:94:9: note: in expansion of macro 'll'
   94 |     set<ll> s;
      |         ^~
Main.cpp:95:5: error: 's' was not declared in this scope
   95 |     s.insert(r1);
      |     ^
Main.cpp:99:9: error: 'visited' was not declared in this scope
   99 |         visited[nodo]=true;
      |         ^~~~~~~
Main.cpp:100:22: error: 'tree1' was not declared in this scope
  100 |         for(ll i=0;i<tree1[nodo].size() && co>0;i++){
      |                      ^~~~~
Main.cpp:102:13: error: 'newtree1' was not declared in this scope
  102 |             newtree1[nodo].push_back(mkp(tree1[nodo][i],0));
      |             ^~~~~~~~
Main.cpp:6:13: error: 'make_pair' was not declared in this scope
    6 | #define mkp make_pair
      |             ^~~~~~~~~
Main.cpp:102:38: note: in expansion of macro 'mkp'
  102 |             newtree1[nodo].push_back(mkp(tree1[nodo][i],0));
      |                                      ^~~
Main.cpp:109:27: error: 'tree2' was not declared in this scope
  109 |     dfsMinimunTree(r2,0,s,tree2,newtree2);
      |                           ^~~~~
Main.cpp:109:33: error: 'newtree2' was not declared in this scope
  109 |     dfsMinimunTree(r2,0,s,tree2,newtree2);
      |                                 ^~~~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:110:17: note: in expansion of macro 'll'
  110 |     vector<pair<ll,ll>> edges;
      |                 ^~
Main.cpp:112:22: error: 'newtree1' was not declared in this scope
  112 |         for(ll j=0;j<newtree1[i].size();j++){
      |                      ^~~~~~~~
Main.cpp:113:41: error: 'edges' was not declared in this scope
  113 |             if(i!=newtree1[i][j].first) edges.push_back(mkp(i,newtree1[i][j].first));
      |                                         ^~~~~
Main.cpp:6:13: error: 'make_pair' was not declared in this scope
    6 | #define mkp make_pair
      |             ^~~~~~~~~
Main.cpp:113:57: note: in expansion of macro 'mkp'
  113 |             if(i!=newtree1[i][j].first) edges.push_back(mkp(i,newtree1[i][j].first));
      |                                                         ^~~
Main.cpp:117:18: error: 'edges' was not declared in this scope
  117 |     for(ll i=0;i<edges.size();i++){
      |                  ^~~~~
Main.cpp:121:11: error: 'flush' was not declared in this scope
  121 |     cout<<flush;
      |           ^~~~~
Main.cpp:122:12: error: 'stdout' was not declared in this scope
  122 |     fflush(stdout);
      |            ^~~~~~
Main.cpp:1:1: note: 'stdout' is defined in header '<cstdio>'; did you forget to '#include <cstdio>'?
  +++ |+#include <cstdio>
    1 | include <bits/stdc++.h>
Main.cpp:122:5: error: 'fflush' was not declared in this scope
  122 |     fflush(stdout);
      |     ^~~~~~
Main.cpp:123:18: error: 'edges' was not declared in this scope
  123 |     for(ll i=0;i<edges.size();i++){
      |                  ^~~~~
Main.cpp:128:22: error: 'newtree1' was not declared in this scope
  128 |         for(ll j=0;j<newtree1[edges[i].first].size();j++){
      |                      ^~~~~~~~
Main.cpp:134:22: error: 'newtree1' was not declared in this scope
  134 |         for(ll j=0;j<newtree1[edges[i].second].size();j++){
      |                      ^~~~~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:153:19: note: in expansion of macro 'll'
  153 |     vector<vector<ll>> up1, up2;
      |                   ^~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:154:12: note: in expansion of macro 'll'
  154 |     vector<ll> depth1, depth2, dist1, dist2;
      |            ^~
Main.cpp:155:10: error: 'newtree1' was not declared in this scope
  155 |     BLCA(newtree1,up1,depth1,dist1,r1,N,K);
      |          ^~~~~~~~
Main.cpp:155:19: error: 'up1' was not declared in this scope
  155 |     BLCA(newtree1,up1,depth1,dist1,r1,N,K);
      |                   ^~~
Main.cpp:155:23: error: 'depth1' was not declared in this scope
  155 |     BLCA(newtree1,up1,depth1,dist1,r1,N,K);
      |                       ^~~~~~
Main.cpp:155:30: error: 'dist1' was not declared in this scope
  155 |     BLCA(newtree1,up1,depth1,dist1,r1,N,K);
      |                              ^~~~~
Main.cpp:155:5: error: 'BLCA' was not declared in this scope; did you mean 'GLCA'?
  155 |     BLCA(newtree1,up1,depth1,dist1,r1,N,K);
      |     ^~~~
      |     GLCA
Main.cpp:156:19: error: 'up2' was not declared in this scope
  156 |     BLCA(newtree2,up2,depth2,dist2,r2,N,K);
      |                   ^~~
Main.cpp:156:23: error: 'depth2' was not declared in this scope
  156 |     BLCA(newtree2,up2,depth2,dist2,r2,N,K);
      |                       ^~~~~~
Main.cpp:156:30: error: 'dist2' was not declared in this scope
  156 |     BLCA(newtree2,up2,depth2,dist2,r2,N,K);
      |                              ^~~~~
Main.cpp:5:12: error: expected primary-expression before 'long'
    5 | #define ll long long
      |            ^~~~
Main.cpp:157:17: note: in expansion of macro 'll'
  157 |     vector<pair<ll,ll>> questions(T);
      |                 ^~
Main.cpp:161:9: error: 'questions' was not declared in this scope
  161 |         questions[i]=mkp(u,v);
      |         ^~~~~~~~~
Main.cpp:6:13: error: 'make_pair' was not declared in this scope
    6 | #define mkp make_pair
      |             ^~~~~~~~~
Main.cpp:161:22: note: in expansion of macro 'mkp'
  161 |         questions[i]=mkp(u,v);
      |                      ^~~
Main.cpp:164:31: error: 'questions' was not declared in this scope
  164 |         ll w1=GLCA(up1,depth1,questions[i].first,questions[i].second);
      |                               ^~~~~~~~~
Main.cpp:164:69: error: 'GLCA' cannot be used as a function
  164 |         ll w1=GLCA(up1,depth1,questions[i].first,questions[i].second);
      |                                                                     ^
Main.cpp:165:69: error: 'GLCA' cannot be used as a function
  165 |         ll w2=GLCA(up2,depth2,questions[i].first,questions[i].second);
      |                                                                     ^