Submission #11599167
Source Code Expand
using System; using System.Linq; using System.Collections; using System.Collections.Generic; namespace EX20 { public class Solve { public static void Main(string[] args) { new Atc001TasksDfs_a(); } } public class Arc031_2 { char umi = 'x'; char riku = 'o'; char[][] arr = new char[12][]; bool[,] check = new bool[12, 12]; int[] vy = { 1, 0, -1, 0 }; int[] vx = { 0, 1, 0, -1 }; public Arc031_2() { arr[0] = Enumerable.Repeat(umi, 12).ToArray(); arr[11] = Enumerable.Repeat(umi, 12).ToArray(); for (int i = 1; i <= 10; i++) arr[i] = $"{umi}{Ex.Read}{umi}".ToCharArray(); for (int i = 0; i < 12; i++) for (int j = 0; j < 12; j++) check[i, j] = true; if (Isok()) { Write(true); return; } for (int i = 1; i <= 10; i++) for (int j = 1; j <= 10; j++) if (arr[i][j] == umi) { arr[i][j] = riku; if (Isok()) { Write(true); return; } arr[i][j] = umi; } Write(false); } public void Clear() { for (int i = 1; i <= 10; i++) for (int j = 1; j <= 10; j++) check[i, j] = (arr[i][j] == umi); } public bool Empty() { for (int i = 1; i <= 10; i++) for (int j = 1; j <= 10; j++) if (!check[i, j]) return false; return true; } public void Isok(int i, int j) { for (int k = 0; k < 4; k++) { var x = i + vy[k]; var y = j + vx[k]; if (arr[x][y] == riku && !check[x, y]) { check[x, y] = true; Isok(x, y); } } } public bool Isok() { Clear(); for (int i = 1; i <= 10; i++) for (int j = 1; j <= 10; j++) { if (arr[i][j] == riku) { Isok(i, j); return Empty(); } } return true; } public void Write(bool b) { if (b) Console.WriteLine("YES"); else Console.WriteLine("NO"); } } public class Atc001TasksDfs_a { /// <summary> /// 街の南北の長さとして整数H /// </summary> int h; /// <summary> /// 東西の長さとして整数W /// </summary> int w; /// <summary> /// 格子状の街の各区画における状態 /// s : その区画が家であることを表す。 /// g : その区画が魚屋であることを表す。 /// . : その区画が道であることを表す。 /// # : その区画が塀であることを表す。 /// </summary> char[][] arr; bool[][] check; int[] vy = { 1, 0, -1, 0 }; int[] vx = { 0, 1, 0, -1 }; public Atc001TasksDfs_a() { var i = Input(); Write(dfs(i.Item1, i.Item2)); } bool dfs(int i, int j) { if (arr[i][j] == '#') return false; if (check[i][j]) return false; check[i][j] = true; if (arr[i][j] == 'g') { return true; } for (int k = 0; k < 4; k++) { var x = i + vy[k]; var y = j + vx[k]; if (x >= 0 && y >= 0 && x < h && y < w) { if (dfs(x, y)) return true; } } return false; } Tuple<int, int> Input() { var l1 = Ex.ReadIntArray(); h = l1[0]; w = l1[1]; arr = new char[h][]; check = new bool[h][]; for (int i = 0; i < h; i++) { arr[i] = Ex.Read.ToCharArray(); check[i] = new bool[w]; } for (int i = 0; i < h; i++) { var idx = arr[i].ToList().IndexOf('s'); if (idx >= 0) { return Tuple.Create(i, idx); } } return Tuple.Create(0, 0); } public void Write(bool b) { if (b) Console.WriteLine("YES"); else Console.WriteLine("NO"); } } public class ABC_ { public ABC_() { } } public static class Ex { public static void Cw(object s) { Console.WriteLine(s); } public static void Cw(bool b) { if (b) Cw("Yes"); else Cw("No"); } public static string Read { get { return Console.ReadLine().Trim(); } } public static int ReadInt { get { return int.Parse(Read); } } public static long ReadLong { get { return long.Parse(Read); } } public static double ReadDouble { get { return double.Parse(Read); } } public static string[] ReadArray() { return Read.Split(' '); } public static int[] ReadIntArray() { return Read.Split(' ').Select(s => int.Parse(s)).ToArray(); } public static long[] ReadLongArray() { return Read.Split(' ').Select(s => long.Parse(s)).ToArray(); } public static string[] ReadArray(long N) { var ret = new string[N]; for (long i = 0; i < N; ++i) ret[i] = Read; return ret; } public static int[] ReadIntArray(long N) { var ret = new int[N]; for (long i = 0; i < N; ++i) ret[i] = ReadInt; return ret; } public static long[] ReadLongArray(long N) { var ret = new long[N]; for (long i = 0; i < N; ++i) ret[i] = ReadLong; return ret; } } }
Submission Info
Submission Time | |
---|---|
Task | A - 深さ優先探索 |
User | return |
Language | C# (Mono 4.6.2.0) |
Score | 0 |
Code Size | 6515 Byte |
Status | WA |
Exec Time | 40 ms |
Memory | 25684 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 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 | WA | 25 ms | 11360 KB |
00_min_02.txt | WA | 25 ms | 9312 KB |
00_min_03.txt | WA | 25 ms | 11476 KB |
00_min_04.txt | WA | 25 ms | 9428 KB |
00_min_05.txt | WA | 26 ms | 11476 KB |
00_min_06.txt | WA | 26 ms | 11360 KB |
00_min_07.txt | WA | 25 ms | 11360 KB |
00_min_08.txt | WA | 26 ms | 11360 KB |
00_sample_01.txt | WA | 25 ms | 11360 KB |
00_sample_02.txt | WA | 25 ms | 11476 KB |
00_sample_03.txt | WA | 25 ms | 9312 KB |
00_sample_04.txt | WA | 26 ms | 11360 KB |
00_sample_05.txt | WA | 26 ms | 11360 KB |
01_rnd_00.txt | WA | 27 ms | 11476 KB |
01_rnd_01.txt | WA | 30 ms | 16352 KB |
01_rnd_02.txt | WA | 31 ms | 15444 KB |
01_rnd_03.txt | WA | 31 ms | 15572 KB |
01_rnd_04.txt | WA | 32 ms | 15200 KB |
01_rnd_05.txt | WA | 27 ms | 11476 KB |
01_rnd_06.txt | WA | 36 ms | 16724 KB |
01_rnd_07.txt | WA | 31 ms | 13664 KB |
01_rnd_08.txt | WA | 27 ms | 11360 KB |
01_rnd_09.txt | WA | 28 ms | 13524 KB |
01_rnd_10.txt | WA | 33 ms | 9940 KB |
01_rnd_11.txt | WA | 28 ms | 13408 KB |
01_rnd_12.txt | WA | 28 ms | 12244 KB |
01_rnd_13.txt | WA | 30 ms | 13920 KB |
01_rnd_14.txt | WA | 28 ms | 15456 KB |
01_rnd_15.txt | WA | 32 ms | 16980 KB |
01_rnd_16.txt | WA | 28 ms | 13524 KB |
01_rnd_17.txt | WA | 35 ms | 12884 KB |
01_rnd_18.txt | WA | 28 ms | 13524 KB |
01_rnd_19.txt | WA | 40 ms | 25684 KB |
02_rndhard_00.txt | WA | 28 ms | 13524 KB |
02_rndhard_01.txt | WA | 27 ms | 11476 KB |
02_rndhard_02.txt | WA | 29 ms | 13524 KB |
02_rndhard_03.txt | WA | 28 ms | 9428 KB |
02_rndhard_04.txt | WA | 28 ms | 15456 KB |
02_rndhard_05.txt | WA | 28 ms | 13524 KB |
02_rndhard_06.txt | WA | 28 ms | 15572 KB |
02_rndhard_07.txt | WA | 27 ms | 13408 KB |
02_rndhard_08.txt | WA | 28 ms | 13408 KB |
02_rndhard_09.txt | WA | 27 ms | 11476 KB |
02_rndhard_10.txt | WA | 27 ms | 11360 KB |
02_rndhard_11.txt | WA | 27 ms | 11360 KB |
02_rndhard_12.txt | WA | 27 ms | 9312 KB |
02_rndhard_13.txt | WA | 27 ms | 11360 KB |
02_rndhard_14.txt | WA | 28 ms | 15456 KB |
02_rndhard_15.txt | WA | 28 ms | 15456 KB |
02_rndhard_16.txt | WA | 27 ms | 11360 KB |
02_rndhard_17.txt | WA | 27 ms | 11360 KB |
02_rndhard_18.txt | WA | 27 ms | 9312 KB |
02_rndhard_19.txt | WA | 27 ms | 11476 KB |
02_rndhard_20.txt | WA | 27 ms | 11476 KB |
02_rndhard_21.txt | WA | 27 ms | 11348 KB |
02_rndhard_22.txt | WA | 27 ms | 9428 KB |
02_rndhard_23.txt | WA | 28 ms | 13408 KB |
02_rndhard_24.txt | WA | 28 ms | 13524 KB |
02_rndhard_25.txt | WA | 28 ms | 13408 KB |
02_rndhard_26.txt | WA | 27 ms | 11360 KB |
02_rndhard_27.txt | WA | 27 ms | 11360 KB |
02_rndhard_28.txt | WA | 28 ms | 13408 KB |
02_rndhard_29.txt | WA | 28 ms | 13408 KB |
02_rndhard_30.txt | WA | 27 ms | 11360 KB |
02_rndhard_31.txt | WA | 28 ms | 13524 KB |
02_rndhard_32.txt | WA | 27 ms | 11476 KB |
02_rndhard_33.txt | WA | 27 ms | 13408 KB |
02_rndhard_34.txt | WA | 28 ms | 13408 KB |
02_rndhard_35.txt | WA | 27 ms | 13524 KB |
02_rndhard_36.txt | WA | 27 ms | 13408 KB |
02_rndhard_37.txt | WA | 27 ms | 13408 KB |
02_rndhard_38.txt | WA | 27 ms | 11476 KB |
02_rndhard_39.txt | WA | 28 ms | 13408 KB |
03_rndhardsmall_00.txt | WA | 25 ms | 11360 KB |
03_rndhardsmall_01.txt | WA | 26 ms | 13408 KB |
03_rndhardsmall_02.txt | WA | 25 ms | 9428 KB |
03_rndhardsmall_03.txt | WA | 25 ms | 9428 KB |
03_rndhardsmall_04.txt | WA | 25 ms | 9428 KB |
03_rndhardsmall_05.txt | WA | 25 ms | 9428 KB |
03_rndhardsmall_06.txt | WA | 26 ms | 11476 KB |
03_rndhardsmall_07.txt | WA | 25 ms | 11476 KB |
03_rndhardsmall_08.txt | WA | 25 ms | 9428 KB |
03_rndhardsmall_09.txt | WA | 25 ms | 9428 KB |