Submission #921043


Source Code Expand

#include<iostream>
#include<string.h>
#include<string>
#include<cstdio>
#include<algorithm>
#include<stack>
#include<queue>
#include<vector>
#include<cmath>
#include<utility>
#include<set>
#define ll long long int
#define ld long double
#define INF 1000000000
#define EPS 0.0000000001
#define rep(i,n) for(i=0;i<n;i++)
using namespace std;
typedef pair<int, int> P;

int main()
{
  int r,c;
  int i,j,k;
  int sx,sy;
  int gx,gy;
  int reached[60][60]={};
  char a[60][60];
  int dx[4]={0,1,0,-1};
  int dy[4]={1,0,-1,0};

  cin>>r>>c;
  cin>>sy>>sx;
  cin>>gy>>gx;
  sx--;
  sy--;
  gx--;
  gy--;

  rep(i,r)rep(j,c)
    cin>>a[i][j];

  queue<P> q1;
  queue<P> q2;

  q1.push(P(sx,sy));

  rep(k,300){
    while(q1.size()){
      int x=q1.front().first;
      int y=q1.front().second;
      rep(i,4){
	if(x+dx[i]<0 || x+dx[i]>=c || y+dy[i]<0 || y+dy[i]>=r)continue;
	if(a[y+dy[i]][x+dx[i]]=='.' && reached[y+dy[i]][x+dx[i]]==0){
	  q2.push(P(x+dx[i],y+dy[i]));
	  reached[y+dy[i]][x+dx[i]]=k;
	}
      }
      q1.pop();
    }
    if(reached[gy][gx])break;
    while(q2.size()){
      q1.push(P(q2.front().first,q2.front().second));
      q2.pop();
    }
  }
  cout<<reached[gy][gx]+1<<endl;
}

Submission Info

Submission Time
Task C - 幅優先探索
User rika0384
Language C++ (G++ 4.6.4)
Score 0
Code Size 1262 Byte
Status WA
Exec Time 20 ms
Memory 972 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 100
Status
AC × 3
AC × 18
WA × 7
Set Name Test Cases
Sample subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt
All subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt
Case Name Status Exec Time Memory
subtask0_sample01.txt AC 20 ms 916 KB
subtask0_sample02.txt AC 20 ms 916 KB
subtask0_sample03.txt AC 20 ms 924 KB
subtask1_01.txt WA 19 ms 920 KB
subtask1_02.txt WA 19 ms 920 KB
subtask1_03.txt AC 18 ms 924 KB
subtask1_04.txt AC 20 ms 924 KB
subtask1_05.txt AC 19 ms 916 KB
subtask1_06.txt WA 19 ms 920 KB
subtask1_07.txt AC 18 ms 972 KB
subtask1_08.txt AC 20 ms 920 KB
subtask1_09.txt AC 20 ms 924 KB
subtask1_10.txt AC 19 ms 924 KB
subtask1_11.txt AC 20 ms 920 KB
subtask1_12.txt AC 20 ms 916 KB
subtask1_13.txt AC 20 ms 920 KB
subtask1_14.txt AC 18 ms 916 KB
subtask1_15.txt AC 20 ms 920 KB
subtask1_16.txt AC 20 ms 924 KB
subtask1_17.txt AC 20 ms 924 KB
subtask1_18.txt AC 18 ms 924 KB
subtask1_19.txt WA 18 ms 924 KB
subtask1_20.txt WA 20 ms 920 KB
subtask1_21.txt WA 19 ms 916 KB
subtask1_22.txt WA 20 ms 924 KB