全jj re

P1746 离开中山路

zhizhenzqs @ 2024-08-20 09:09:33


#include <bits/stdc++.h> 
using namespace std;

int n,c[1000010][3];
char a[2010][1010];
int fx[5]={0,0,1,0,-1};
int fy[5]={0,1,0,-1,0};
//void shi(int x,int y,int k){
//  if()
//  
//  
//}

int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
    for(int j=1;j<=n;j++)
    {
        cin>>a[i][j];
    }
    int xx,yy,sx,sy;
    cin>>xx>>yy>>sx>>sy;
    int i=1,t=1;
    c[1][0]=xx;
    c[1][1]=yy;
    c[1][2]=0;
    while(i<t||t==1)
    {
        int x=c[i][0];
        int y=c[i][1];
        int k=c[i][2];
        a[x][y]='1';
        if(x==sx&&y==sy)
        {
            cout<<k;
            return 0;
        }
    for(int q=1;q<=4;q++)
    {
        int tx=x+fx[q];
        int ty=y+fy[q];
        if(a[tx][ty]=='0');
        {
            c[++t][0]=tx,c[t][1]=ty;
            c[t][2]=k+1;
        }
    }
    i++;

//  for(int q=1;q<=n;q++)
//  {
//      for(int w=1;w<=n;w++)
//      {
//          cout<<a[q][w]<<' ';
//      }cout<<endl;
//  }
    }

}

by Whitecrane @ 2024-08-20 09:12:57

来咯

#include<bits/stdc++.h>
using namespace std;
char a[1100][1100];
int m,n;
int sx,sy,ex,ey;
int fx[5]={0,0,1,0,-1};
int fy[5]={0,1,0,-1,0};
int q[1000300][4];
int main()
{
    int h=1,t=1;
    cin>>n;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=n;j++){
            cin>>a[i][j];
        }
    }
    cin>>sx>>sy>>ex>>ey;
    a[sx][sy]='1';
    q[1][1]=sx;
    q[1][2]=sy;
    q[1][3]=0;
    int tx,ty;
    while(h<=t){
        for(int i=1;i<=4;i++){
            tx=q[h][1]+fx[i];
            ty=q[h][2]+fy[i];
            if(a[tx][ty]=='0'){
                a[tx][ty]='1';
                t++;
                q[t][1]=tx;
                q[t][2]=ty;
                q[t][3]=q[h][3]+1;
                if(tx==ex&&ty==ey){
                    cout<<q[t][3]<<endl;
                    return 0;
                }
            }
        }
        h++;
    }
}

by LikablePie79015 @ 2024-08-20 09:15:05

@zhizhenzqs

把格子标记为 '1' 应该在判断那个格子能走之后就立马标记,否则可能导致一个格子重复走很多次。


by zhizhenzqs @ 2024-08-20 11:01:22

已a xie xie @LikablePie79015


|