Submission #420572
Source Code Expand
import java.awt.Point; import java.util.*; public class Main { private final static Main main = new Main(); private final int[] dx = {0, 0, 1, -1}; private final int[] dy = {1, -1, 0, 0}; public static void main(String[] args) { main.solve(); } private void solve() { Scanner sc = new Scanner(System.in); int h = sc.nextInt(); int w = sc.nextInt(); sc.nextLine(); boolean[][] map = new boolean[h][w]; int sx = 0, sy = 0, gx = 0, gy = 0; for(int i=0; i<h; ++i) { String s = sc.nextLine(); for(int j=0; j<w; ++j) { map[i][j] = s.charAt(j) != '#'; if(s.charAt(j) == 'g') { gx = j; gy = i; } if(s.charAt(j) == 's') { sx = j; sy = i; } } } System.out.println(dfs(h, w, map, new boolean[h][w], new Point(sx, sy), new Point(gx, gy)) ? "Yes" : "No"); } private boolean dfs(int h, int w, boolean[][] map, boolean[][] visit, Point s, Point g) { if(s.x < 0 || w <= s.x || s.y < 0 || h <= s.y || !map[s.y][s.x] || visit[s.y][s.x]) { return false; } if(s.x == g.x && s.y == g.y) { return true; } visit[s.y][s.x] = true; for(int i=0; i<4; ++i) { int x = s.x + dx[i]; int y = s.y + dy[i]; if(dfs(h, w, map, visit, new Point(x, y), g)) { return true; } } return false; } }
Submission Info
Submission Time | |
---|---|
Task | A - 深さ優先探索 |
User | poxoq |
Language | Java (OpenJDK 1.7.0) |
Score | 100 |
Code Size | 1791 Byte |
Status | AC |
Exec Time | 539 ms |
Memory | 46520 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt |
All | 00_min_01.txt, 00_min_02.txt, 00_min_03.txt, 00_min_04.txt, 00_min_05.txt, 00_min_06.txt, 00_min_07.txt, 00_min_08.txt, 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt, 01_rnd_00.txt, 01_rnd_01.txt, 01_rnd_02.txt, 01_rnd_03.txt, 01_rnd_04.txt, 01_rnd_05.txt, 01_rnd_06.txt, 01_rnd_07.txt, 01_rnd_08.txt, 01_rnd_09.txt, 01_rnd_10.txt, 01_rnd_11.txt, 01_rnd_12.txt, 01_rnd_13.txt, 01_rnd_14.txt, 01_rnd_15.txt, 01_rnd_16.txt, 01_rnd_17.txt, 01_rnd_18.txt, 01_rnd_19.txt, 02_rndhard_00.txt, 02_rndhard_01.txt, 02_rndhard_02.txt, 02_rndhard_03.txt, 02_rndhard_04.txt, 02_rndhard_05.txt, 02_rndhard_06.txt, 02_rndhard_07.txt, 02_rndhard_08.txt, 02_rndhard_09.txt, 02_rndhard_10.txt, 02_rndhard_11.txt, 02_rndhard_12.txt, 02_rndhard_13.txt, 02_rndhard_14.txt, 02_rndhard_15.txt, 02_rndhard_16.txt, 02_rndhard_17.txt, 02_rndhard_18.txt, 02_rndhard_19.txt, 02_rndhard_20.txt, 02_rndhard_21.txt, 02_rndhard_22.txt, 02_rndhard_23.txt, 02_rndhard_24.txt, 02_rndhard_25.txt, 02_rndhard_26.txt, 02_rndhard_27.txt, 02_rndhard_28.txt, 02_rndhard_29.txt, 02_rndhard_30.txt, 02_rndhard_31.txt, 02_rndhard_32.txt, 02_rndhard_33.txt, 02_rndhard_34.txt, 02_rndhard_35.txt, 02_rndhard_36.txt, 02_rndhard_37.txt, 02_rndhard_38.txt, 02_rndhard_39.txt, 03_rndhardsmall_00.txt, 03_rndhardsmall_01.txt, 03_rndhardsmall_02.txt, 03_rndhardsmall_03.txt, 03_rndhardsmall_04.txt, 03_rndhardsmall_05.txt, 03_rndhardsmall_06.txt, 03_rndhardsmall_07.txt, 03_rndhardsmall_08.txt, 03_rndhardsmall_09.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_min_01.txt | AC | 391 ms | 23952 KB |
00_min_02.txt | AC | 339 ms | 23948 KB |
00_min_03.txt | AC | 337 ms | 23940 KB |
00_min_04.txt | AC | 336 ms | 23936 KB |
00_min_05.txt | AC | 345 ms | 24000 KB |
00_min_06.txt | AC | 340 ms | 23940 KB |
00_min_07.txt | AC | 333 ms | 23856 KB |
00_min_08.txt | AC | 333 ms | 23912 KB |
00_sample_01.txt | AC | 330 ms | 23900 KB |
00_sample_02.txt | AC | 332 ms | 23888 KB |
00_sample_03.txt | AC | 345 ms | 23916 KB |
00_sample_04.txt | AC | 345 ms | 23916 KB |
00_sample_05.txt | AC | 343 ms | 23972 KB |
01_rnd_00.txt | AC | 451 ms | 29824 KB |
01_rnd_01.txt | AC | 494 ms | 34716 KB |
01_rnd_02.txt | AC | 477 ms | 34052 KB |
01_rnd_03.txt | AC | 484 ms | 37832 KB |
01_rnd_04.txt | AC | 483 ms | 36940 KB |
01_rnd_05.txt | AC | 454 ms | 30224 KB |
01_rnd_06.txt | AC | 478 ms | 32548 KB |
01_rnd_07.txt | AC | 521 ms | 39176 KB |
01_rnd_08.txt | AC | 450 ms | 29984 KB |
01_rnd_09.txt | AC | 460 ms | 29764 KB |
01_rnd_10.txt | AC | 495 ms | 35076 KB |
01_rnd_11.txt | AC | 447 ms | 30044 KB |
01_rnd_12.txt | AC | 476 ms | 31772 KB |
01_rnd_13.txt | AC | 476 ms | 34288 KB |
01_rnd_14.txt | AC | 448 ms | 30180 KB |
01_rnd_15.txt | AC | 506 ms | 36640 KB |
01_rnd_16.txt | AC | 455 ms | 29896 KB |
01_rnd_17.txt | AC | 509 ms | 35456 KB |
01_rnd_18.txt | AC | 448 ms | 30108 KB |
01_rnd_19.txt | AC | 539 ms | 46520 KB |
02_rndhard_00.txt | AC | 456 ms | 30224 KB |
02_rndhard_01.txt | AC | 467 ms | 30000 KB |
02_rndhard_02.txt | AC | 496 ms | 31612 KB |
02_rndhard_03.txt | AC | 478 ms | 31440 KB |
02_rndhard_04.txt | AC | 444 ms | 30080 KB |
02_rndhard_05.txt | AC | 445 ms | 29900 KB |
02_rndhard_06.txt | AC | 454 ms | 30288 KB |
02_rndhard_07.txt | AC | 456 ms | 29896 KB |
02_rndhard_08.txt | AC | 457 ms | 30292 KB |
02_rndhard_09.txt | AC | 463 ms | 30552 KB |
02_rndhard_10.txt | AC | 460 ms | 30812 KB |
02_rndhard_11.txt | AC | 457 ms | 30308 KB |
02_rndhard_12.txt | AC | 459 ms | 30284 KB |
02_rndhard_13.txt | AC | 453 ms | 30632 KB |
02_rndhard_14.txt | AC | 457 ms | 30324 KB |
02_rndhard_15.txt | AC | 461 ms | 30724 KB |
02_rndhard_16.txt | AC | 445 ms | 29992 KB |
02_rndhard_17.txt | AC | 443 ms | 29992 KB |
02_rndhard_18.txt | AC | 458 ms | 30200 KB |
02_rndhard_19.txt | AC | 443 ms | 29988 KB |
02_rndhard_20.txt | AC | 447 ms | 30044 KB |
02_rndhard_21.txt | AC | 494 ms | 30328 KB |
02_rndhard_22.txt | AC | 460 ms | 30288 KB |
02_rndhard_23.txt | AC | 462 ms | 30668 KB |
02_rndhard_24.txt | AC | 445 ms | 30084 KB |
02_rndhard_25.txt | AC | 443 ms | 29960 KB |
02_rndhard_26.txt | AC | 445 ms | 29876 KB |
02_rndhard_27.txt | AC | 441 ms | 29916 KB |
02_rndhard_28.txt | AC | 461 ms | 29944 KB |
02_rndhard_29.txt | AC | 446 ms | 29968 KB |
02_rndhard_30.txt | AC | 441 ms | 29948 KB |
02_rndhard_31.txt | AC | 445 ms | 30096 KB |
02_rndhard_32.txt | AC | 460 ms | 30408 KB |
02_rndhard_33.txt | AC | 463 ms | 30200 KB |
02_rndhard_34.txt | AC | 448 ms | 30332 KB |
02_rndhard_35.txt | AC | 443 ms | 30040 KB |
02_rndhard_36.txt | AC | 445 ms | 30156 KB |
02_rndhard_37.txt | AC | 444 ms | 29996 KB |
02_rndhard_38.txt | AC | 458 ms | 30280 KB |
02_rndhard_39.txt | AC | 463 ms | 29984 KB |
03_rndhardsmall_00.txt | AC | 333 ms | 23916 KB |
03_rndhardsmall_01.txt | AC | 347 ms | 23992 KB |
03_rndhardsmall_02.txt | AC | 343 ms | 23908 KB |
03_rndhardsmall_03.txt | AC | 338 ms | 23936 KB |
03_rndhardsmall_04.txt | AC | 334 ms | 23892 KB |
03_rndhardsmall_05.txt | AC | 338 ms | 23964 KB |
03_rndhardsmall_06.txt | AC | 342 ms | 23928 KB |
03_rndhardsmall_07.txt | AC | 345 ms | 23860 KB |
03_rndhardsmall_08.txt | AC | 348 ms | 23920 KB |
03_rndhardsmall_09.txt | AC | 347 ms | 23864 KB |