Submission #1626180
Source Code Expand
#include <cstdio>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <vector>
#define INF 1e5;
using namespace std;
int main()
{
int R, C, sy, sx, gy, gx, d[50][50] = {}, i, j, n, y, x, k;
char c[51][51] = {};
vector<int> que, quek;
for (i = 0; i < 50; i++) {
for (j = 0; j < 50; j++) {
d[i][j] = INF;
}
}
scanf("%d %d %d %d %d %d", &R, &C, &sy, &sx, &gy, &gx);
d[sy - 1][sx - 1] = 0;
que.push_back((sy - 1) * C + (sx - 1));
quek.push_back(0);
for (i = 0; i < R; i++) {
scanf("%s", &c[i][0]);
}
while (!que.empty()) {
n = que[0];
que.erase(que.begin());
k = quek[0];
quek.erase(quek.begin());
y = n / C;
x = n % C;
d[y][x] = k;
if (y == gy - 1 && x == gx - 1) {
printf("%d\n", d[y][x]);
return 0;
}
if (c[y - 1][x] == '.' && d[y - 1][x] > k + 1) {
que.push_back((y - 1) * C + x);
quek.push_back(k + 1);
}
if (c[y][x - 1] == '.' && d[y][x - 1] > k + 1) {
que.push_back(y * C + (x - 1));
quek.push_back(k + 1);
}
if (c[y + 1][x] == '.' && d[y + 1][x] > k + 1) {
que.push_back((y + 1) * C + x);
quek.push_back(k + 1);
}
if (c[y][x + 1] == '.' && d[y][x + 1] > k + 1) {
que.push_back(y * C + (x + 1));
quek.push_back(k + 1);
}
}
return 0;
}
Submission Info
Submission Time |
|
Task |
C - 幅優先探索 |
User |
chocobo |
Language |
C++14 (GCC 5.4.1) |
Score |
0 |
Code Size |
1319 Byte |
Status |
TLE |
Exec Time |
2103 ms |
Memory |
1396 KB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:23:56: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d %d %d %d %d %d", &R, &C, &sy, &sx, &gy, &gx);
^
./Main.cpp:30:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%s", &c[i][0]);
^
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
0 / 100 |
Status |
|
|
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 |
1 ms |
256 KB |
subtask0_sample02.txt |
AC |
1 ms |
256 KB |
subtask0_sample03.txt |
TLE |
2103 ms |
1396 KB |
subtask1_01.txt |
AC |
1 ms |
256 KB |
subtask1_02.txt |
AC |
1 ms |
256 KB |
subtask1_03.txt |
AC |
1 ms |
256 KB |
subtask1_04.txt |
TLE |
2103 ms |
1396 KB |
subtask1_05.txt |
TLE |
2103 ms |
1396 KB |
subtask1_06.txt |
TLE |
2103 ms |
892 KB |
subtask1_07.txt |
AC |
1 ms |
256 KB |
subtask1_08.txt |
AC |
1 ms |
256 KB |
subtask1_09.txt |
TLE |
2103 ms |
1396 KB |
subtask1_10.txt |
AC |
3 ms |
256 KB |
subtask1_11.txt |
TLE |
2103 ms |
1396 KB |
subtask1_12.txt |
TLE |
2103 ms |
1396 KB |
subtask1_13.txt |
TLE |
2103 ms |
1276 KB |
subtask1_14.txt |
AC |
1 ms |
256 KB |
subtask1_15.txt |
TLE |
2103 ms |
1020 KB |
subtask1_16.txt |
TLE |
2103 ms |
1020 KB |
subtask1_17.txt |
TLE |
2103 ms |
1276 KB |
subtask1_18.txt |
TLE |
2103 ms |
1276 KB |
subtask1_19.txt |
AC |
1 ms |
256 KB |
subtask1_20.txt |
AC |
2 ms |
256 KB |
subtask1_21.txt |
TLE |
2103 ms |
1276 KB |
subtask1_22.txt |
AC |
158 ms |
384 KB |