supertrees.cpp:17:6: error: ambiguating new declaration of 'void construct(std::vector<std::vector<int> >)'
17 | void construct(vector<vector<int>> P){
| ^~~~~~~~~
In file included from supertrees.cpp:2:
supertrees.h:3:5: note: old declaration 'int construct(std::vector<std::vector<int> >)'
3 | int construct(std::vector<std::vector<int>> p);
| ^~~~~~~~~
supertrees.cpp: In function 'void construct(std::vector<std::vector<int> >)':
supertrees.cpp:19:66: error: return-statement with a value, in function returning 'void' [-fpermissive]
19 | for(int i=0;i<n;i++)for(int j=0;j<n;j++)if(p[i][j]==3)return 0;
| ^
supertrees.cpp:23:68: error: return-statement with a value, in function returning 'void' [-fpermissive]
23 | for(int x:euler)for(int y:euler)if(x!=y&&p[x][y]==0)return 0;
| ^
supertrees.cpp:32:9: error: 'DFS2' was not declared in this scope; did you mean 'DFS1'?
32 | DFS2(i);
| ^~~~
| DFS1
supertrees.cpp:37:40: error: return-statement with a value, in function returning 'void' [-fpermissive]
37 | if((int)euler.size()==2)return 0;
| ^
supertrees.cpp:38:68: error: return-statement with a value, in function returning 'void' [-fpermissive]
38 | for(int x:euler)for(int y:euler)if(x!=y&&p[x][y]==0)return 0;
| ^
supertrees.cpp:48:12: error: return-statement with a value, in function returning 'void' [-fpermissive]
48 | return 1;
| ^