1416 两点

Posted biubiuwham

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1416 两点相关的知识,希望对你有一定的参考价值。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char map[55][55];
int v[55][55];
int flag;
int n,m;
int dir [4][2]={0,1,1,0,0,-1,-1,0};
void dfs(int x,int y,int d,char f)
{
    if(x>n||x<0||y<0||y>m||map[x][y]!=f)
    {
        return;
    }
    if(v[x][y]==1)
    {
        flag=1;
        return;
    }
    v[x][y]=1;
    for(int i=0;i<4;i++)
    {
        
        if (d==0&&i==2) continue;
        if (d==1&&i==3) continue;
        if (d==2&&i==0) continue;
        if (d==3&&i==1) continue;
        int dx=x+dir[i][0];
        int dy=y+dir[i][1];
        dfs(dx,dy,i,f);
    }
}
int main()
{
    while(cin>>n>>m)
    {
        memset(v,0,sizeof(v));
        for(int i=0;i<n;i++)
            for(int j=0;j<m;j++)
            cin>>map[i][j];
        for(int i=0;i<n;i++)
            for(int j=0;j<m;j++)
            {
                if(v[i][j]!=1)
                {
                    dfs(i,j,-1,map[i][j]);
                }
            }
            if(flag==1)cout<<"Yes"<<endl;
            else cout<<"No"<<endl;
    }
    return 0;
}

  

以上是关于1416 两点的主要内容,如果未能解决你的问题,请参考以下文章

51Nod-1416 两点 (暴力DFS)

1416 两点

UVA1416/LA4080 Warfare And Logistics

片段中的Android Snackbar NullPointerException

UVA1416(LA4080) Warfare And Logistics (单源最短路)

jodatime DateTime 对象和语言环境