Submission #1461771


Source Code Expand

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

//--------------------------------------------
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define RFOR(i,a,b) for(int i=(b)-1;i>=(a);i--)
#define REP(i,n) FOR(i,0,n)
#define RREP(i,n) RFOR(i,0,n)
#define LL long long
#define INF INT_MAX/3

//--------------------------------------------
const double EPS = 1e-14;
const double PI  = acos(-1.0);

//--------------------------------------------

typedef pair <int, int> P;

int r, c, sy, sx, gy, gx;
string s;
vector <string> v;
int d[51][51];
int dx[4] = {1, 0, -1, 0};
int dy[4] = {0, 1, 0, -1};

int bfs (){
  queue<P> que;
  FOR (i, 1, r + 1) {
    FOR (j, 1, c + 1) {
      d[i][j] = INF;
    }
  }

  que.push(P(sy,sx));
  d[sy][sx] = 0;

  while (que.size()) {
    P p = que.front(); 
    que.pop();
    if (p.first == gy && p.second == gx) break;

    REP (i, 4) {
      int ny = p.first + dy[i];
      int nx = p.second + dx[i];
      if ((0 < ny && ny <= r) && (0 < nx && nx <= c) && (d[ny][nx] == INF) && (v.at(ny).at(nx) != '#')) {
        que.push(P(ny, nx));
        d[ny][nx] = d[p.first][p.second] + 1;
        printf("d[%d][%d] = %d\n",ny,nx,d[ny][nx]);
      }
    }
  }
  return d[gy][gx];
}

int main(){
  scanf("%d %d",&r,&c);
  scanf("%d %d",&sy,&sx);
  scanf("%d %d",&gy,&gx);
  v.push_back("");
  REP (i, r) {
    cin >> s;
    v.push_back(" " +s);
  }

  printf("%d\n",bfs());
}

Submission Info

Submission Time
Task C - 幅優先探索
User croonalullaby
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1466 Byte
Status WA
Exec Time 2 ms
Memory 256 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:57:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d",&r,&c);
                       ^
./Main.cpp:58:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d",&sy,&sx);
                         ^
./Main.cpp:59:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d",&gy,&gx);
                         ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 100
Status
WA × 3
WA × 25
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 WA 1 ms 256 KB
subtask0_sample02.txt WA 1 ms 256 KB
subtask0_sample03.txt WA 2 ms 256 KB
subtask1_01.txt WA 1 ms 256 KB
subtask1_02.txt WA 1 ms 256 KB
subtask1_03.txt WA 1 ms 256 KB
subtask1_04.txt WA 2 ms 256 KB
subtask1_05.txt WA 1 ms 256 KB
subtask1_06.txt WA 2 ms 256 KB
subtask1_07.txt WA 1 ms 256 KB
subtask1_08.txt WA 1 ms 256 KB
subtask1_09.txt WA 1 ms 256 KB
subtask1_10.txt WA 1 ms 256 KB
subtask1_11.txt WA 2 ms 256 KB
subtask1_12.txt WA 1 ms 256 KB
subtask1_13.txt WA 1 ms 256 KB
subtask1_14.txt WA 1 ms 256 KB
subtask1_15.txt WA 2 ms 256 KB
subtask1_16.txt WA 1 ms 256 KB
subtask1_17.txt WA 2 ms 256 KB
subtask1_18.txt WA 2 ms 256 KB
subtask1_19.txt WA 1 ms 256 KB
subtask1_20.txt WA 1 ms 256 KB
subtask1_21.txt WA 1 ms 256 KB
subtask1_22.txt WA 1 ms 256 KB