/in/foo.cc: In function 'void dfs1(int, int, int, int)':
/in/foo.cc:20:39: error: 'dfs' was not declared in this scope
if(H[x]<h) f[H[x]][y|(1<<(x-tar))]++,dfs(x-1,tar,H[x],y|(1<<(x-tar)));
^~~
/in/foo.cc:20:39: note: suggested alternative: 'dfs1'
if(H[x]<h) f[H[x]][y|(1<<(x-tar))]++,dfs(x-1,tar,H[x],y|(1<<(x-tar)));
^~~
dfs1
/in/foo.cc: In function 'void dfs2(int, int, int, int)':
/in/foo.cc:25:39: error: 'dfs' was not declared in this scope
if(H[x]<h) g[H[x]][y|(1<<(x-tar))]++,dfs(x-1,tar,H[x],y|(1<<(x-tar)));
^~~
/in/foo.cc:25:39: note: suggested alternative: 'dfs2'
if(H[x]<h) g[H[x]][y|(1<<(x-tar))]++,dfs(x-1,tar,H[x],y|(1<<(x-tar)));
^~~
dfs2
/in/foo.cc: In function 'int main()':
/in/foo.cc:42:18: error: too many arguments to function 'void dfs1(int, int, int, int)'
dfs1(m,1,100,0,f);
^
/in/foo.cc:17:6: note: declared here
void dfs1(int x,int tar,int h,int y){
^~~~
/in/foo.cc:43:20: error: too many arguments to function 'void dfs2(int, int, int, int)'
dfs2(N,m+1,100,0,g);
^
/in/foo.cc:22:6: note: declared here
void dfs2(int x,int tar,int h,int y){
^~~~