Submission #68221260
Source Code Expand
Copy
#include <stdio.h>#include <string.h>const int d[4][2] = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}};int H, W;char map[256][256];int mincost[256][256];int q[256 * 256][2];int main(void) {int i, j;int qs = 0, qe = 0;int pt, st;if (scanf("%d%d", &H, &W) != 2) return 1;for (i = 1; i <= H; i++) {if (scanf("%254s", map[i] + 1) != 1) return 1;}memset(mincost ,0x7f, sizeof(mincost));
#include <stdio.h> #include <string.h> const int d[4][2] = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}}; int H, W; char map[256][256]; int mincost[256][256]; int q[256 * 256][2]; int main(void) { int i, j; int qs = 0, qe = 0; int pt, st; if (scanf("%d%d", &H, &W) != 2) return 1; for (i = 1; i <= H; i++) { if (scanf("%254s", map[i] + 1) != 1) return 1; } memset(mincost ,0x7f, sizeof(mincost)); for (i = 1; i <= H; i++) { for (j = 1; j <= W; j++) { if (map[i][j] == '%') { mincost[i][j] = 0; q[qe][0] = i; q[qe][1] = j; qe++; } } } while (qs < qe) { int cy = q[qs][0], cx = q[qs][1]; qs++; for (i = 0; i < 4; i++) { int ny = cy + d[i][0], nx = cx + d[i][1]; if (map[ny][nx] != '\0' && map[ny][nx] != '#' && mincost[ny][nx] > mincost[cy][cx] + 1) { mincost[ny][nx] = mincost[cy][cx] + 1; q[qe][0] = ny; q[qe][1] = nx; qe++; } } } pt = mincost[0][0]; st = mincost[0][0]; for (i = 1; i <= H; i++) { for (j = 1; j <= W; j++) { if (map[i][j] == '@' && mincost[i][j] < pt) pt = mincost[i][j]; if (map[i][j] == '$' && mincost[i][j] < st) st = mincost[i][j]; } } puts(pt < st ? "Yes" : "No"); return 0; }
Submission Info
Submission Time | |
---|---|
Task | B - Help the Princess! |
User | mikecat |
Language | C (gcc 12.2.0) |
Score | 100 |
Code Size | 1236 Byte |
Status | AC |
Exec Time | 2 ms |
Memory | 2188 KiB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 100 / 100 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | 00_sample_00, 00_sample_01, 00_sample_02, 00_sample_03, 00_sample_04, 10_random_00, 10_random_01, 10_random_02, 10_random_03, 10_random_04, 10_random_05, 10_random_06, 10_random_07, 10_random_08, 10_random_09, 20_dense_yes_00, 20_dense_yes_01, 20_dense_yes_02, 20_dense_yes_03, 20_dense_yes_04, 21_dense_no_00, 21_dense_no_01, 21_dense_no_02, 21_dense_no_03, 21_dense_no_04, 30_maze_yes_00, 30_maze_yes_01, 30_maze_yes_02, 30_maze_yes_03, 30_maze_yes_04, 31_maze_no_00, 31_maze_no_01, 31_maze_no_02, 31_maze_no_03, 31_maze_no_04, 70_minimum_00, 70_minimum_01, 70_minimum_02, 70_minimum_03, 70_minimum_04, 70_minimum_05, 70_minimum_06, 70_minimum_07, 70_minimum_08, 70_minimum_09, 80_maximum_00, 80_maximum_01, 80_maximum_02, 80_maximum_03, 80_maximum_04, 85_worst_00, 85_worst_01 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_00 | AC | 1 ms | 1788 KiB |
00_sample_01 | AC | 1 ms | 1880 KiB |
00_sample_02 | AC | 1 ms | 1832 KiB |
00_sample_03 | AC | 1 ms | 1836 KiB |
00_sample_04 | AC | 1 ms | 1892 KiB |
10_random_00 | AC | 1 ms | 1880 KiB |
10_random_01 | AC | 1 ms | 1884 KiB |
10_random_02 | AC | 1 ms | 2072 KiB |
10_random_03 | AC | 1 ms | 1908 KiB |
10_random_04 | AC | 1 ms | 1848 KiB |
10_random_05 | AC | 1 ms | 2008 KiB |
10_random_06 | AC | 1 ms | 2020 KiB |
10_random_07 | AC | 1 ms | 1920 KiB |
10_random_08 | AC | 1 ms | 1952 KiB |
10_random_09 | AC | 1 ms | 1824 KiB |
20_dense_yes_00 | AC | 1 ms | 1860 KiB |
20_dense_yes_01 | AC | 1 ms | 2084 KiB |
20_dense_yes_02 | AC | 1 ms | 1944 KiB |
20_dense_yes_03 | AC | 1 ms | 1724 KiB |
20_dense_yes_04 | AC | 1 ms | 1808 KiB |
21_dense_no_00 | AC | 1 ms | 1956 KiB |
21_dense_no_01 | AC | 1 ms | 1892 KiB |
21_dense_no_02 | AC | 1 ms | 2072 KiB |
21_dense_no_03 | AC | 1 ms | 1888 KiB |
21_dense_no_04 | AC | 1 ms | 2060 KiB |
30_maze_yes_00 | AC | 1 ms | 1864 KiB |
30_maze_yes_01 | AC | 1 ms | 1840 KiB |
30_maze_yes_02 | AC | 1 ms | 1736 KiB |
30_maze_yes_03 | AC | 1 ms | 1852 KiB |
30_maze_yes_04 | AC | 1 ms | 2024 KiB |
31_maze_no_00 | AC | 1 ms | 2000 KiB |
31_maze_no_01 | AC | 1 ms | 1856 KiB |
31_maze_no_02 | AC | 1 ms | 2080 KiB |
31_maze_no_03 | AC | 1 ms | 1920 KiB |
31_maze_no_04 | AC | 1 ms | 1924 KiB |
70_minimum_00 | AC | 1 ms | 1860 KiB |
70_minimum_01 | AC | 1 ms | 1784 KiB |
70_minimum_02 | AC | 1 ms | 1860 KiB |
70_minimum_03 | AC | 1 ms | 1932 KiB |
70_minimum_04 | AC | 1 ms | 1864 KiB |
70_minimum_05 | AC | 1 ms | 1828 KiB |
70_minimum_06 | AC | 1 ms | 1788 KiB |
70_minimum_07 | AC | 1 ms | 1912 KiB |
70_minimum_08 | AC | 1 ms | 1824 KiB |
70_minimum_09 | AC | 1 ms | 1860 KiB |
80_maximum_00 | AC | 2 ms | 2128 KiB |
80_maximum_01 | AC | 1 ms | 2184 KiB |
80_maximum_02 | AC | 2 ms | 2188 KiB |
80_maximum_03 | AC | 1 ms | 2164 KiB |
80_maximum_04 | AC | 2 ms | 2160 KiB |
85_worst_00 | AC | 1 ms | 2036 KiB |
85_worst_01 | AC | 1 ms | 2084 KiB |