求助,全MLE
  • 板块P1141 01迷宫
  • 楼主藏獒
  • 当前回复1
  • 已保存回复1
  • 发布时间2021/8/11 11:26
  • 上次更新2023/11/4 11:04:13
查看原帖
求助,全MLE
376628
藏獒楼主2021/8/11 11:26
#include<bits/stdc++.h>
using namespace std;
int n,x,y,m,ans,vis[1001][1001];
char s[1001][1001];
void dfs(int a,int b){
    if(a<1||b<1||a>n||b>n) return ;
    vis[a][b]=1;
    if(vis[a][b]==0) ans++;
    if(s[a-1][b]!=s[a][b]){
        dfs(a-1,b);
    }
    if(s[a-1][b]!=s[a][b]){
        dfs(a-1,b);
    }
    if(s[a][b-1]!=s[a][b]){
        dfs(a,b-1);
    }
    if(s[a][b+1]!=s[a][b]){
        dfs(a,b+1);
    }
}
int main(){
    cin>>n>>m;
    for (int i=1;i<=n;i++)
        scanf("%s",s[i]);
    for(int i=1;i<=m;i++){
        cin>>x>>y;
        dfs(x,y);
        cout<<ans<<endl;
        ans=0;
    }
    return 0;
}
2021/8/11 11:26
加载中...