求助!!!为什么输出0???

P1644 跳马问题

@[wdzxghl](/user/266774) dfs的时候,判合不合法你写的<n和<m应该是<=
by jiangby @ 2020-06-29 12:38:55


``` #include<bits/stdc++.h> using namespace std; int n,m; int bf[20][20]; int ans; int dx[5]{1,2,2,1}; int dy[5]{2,1,-1,-2}; void dfs(int x,int y) { if(x==m&&y==n) {ans++;return;} for(int i=0;i<4;i++) { int xx=x+dx[i]; int yy=y+dy[i]; if(xx>=0&&xx<=m&&yy>=0&&yy<=n&&!bf[xx][yy]) { bf[xx][yy]=1; dfs(xx,yy); bf[xx][yy]=0; } } } int main() { cin>>n>>m; dfs(0,0); cout<<ans<<endl; return 0; } ``` 改后可过
by 林楚颜 @ 2020-07-22 19:33:09


@[林楚颜](/user/247159) 谢谢大佬
by wdzxghl @ 2020-07-24 10:55:54


@[disangan333](/user/75982)
by lixiaosheng @ 2022-04-19 19:17:17


|