deblo.cpp:11:1: error: 'VI' does not name a type
VI adj[maxn];
^~
deblo.cpp: In function 'void dfs(int, int)':
deblo.cpp:14:15: error: 'adj' was not declared in this scope
for(auto p : adj[u]) if(p != fa) dfs(p, u);
^~~
deblo.cpp:17:15: error: 'adj' was not declared in this scope
for(auto p : adj[u]) if(p != fa)
^~~
deblo.cpp: In function 'int main()':
deblo.cpp:36:41: error: 'adj' was not declared in this scope
fo(i,2,n) {int u, v; sf("%d%d",&u,&v); adj[u].emplace_back(v); adj[v].emplace_back(u);}
^~~
deblo.cpp:34:4: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
sf("%d",&n);
^
deblo.cpp:35:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
fo(i,1,n) sf("%d",&a[i]);
^
deblo.cpp:36:25: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
fo(i,2,n) {int u, v; sf("%d%d",&u,&v); adj[u].emplace_back(v); adj[v].emplace_back(u);}
^