懒懒


私信TA

用户名:uq_30538775724

访问量:358

签 名:

等  级
排  名 49008
经  验 294
参赛次数 0
文章发表 3
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

带记录的dfs
浏览:59
暴搜 DFS走迷宫
浏览:179

解题思路:

注意事项:

参考代码:

#include<bits/stdc++.h>
using namespace std;
const int N=35,M=35;
bool vis[N][N];
int ans=0;
int n,m;
int dx[]={1,0};
int dy[]={0,1};

void dfs(int x,int y){
    if(x==n&&y==m){ans++;return;}
    for(int i=0;i<2;i++){
        int xx=x+dx[i],yy=y+dy[i];
        if(xx<=0||yy<=0||xx>n||yy>m)continue;
        if(xx%2==0&&yy%2==0)continue;
        else{
            vis[xx][yy]=true;
            dfs(xx,yy);
            vis[xx][yy]=false;
        }
    }
}

int main()
{
    memset(vis,false,sizeof(vis));
    cin>>n>>m;
    dfs(1,1);
    cout<<ans;
    return 0;
}

 

0.0分

0 人评分

  评论区

  • «
  • »