Submission #423503


Source Code Expand

import scala.collection.immutable.Stack
import scala.annotation.tailrec

object Main {

  val Array(h,w,_*) = readLine.split(" ").map(_.toInt)
  val grid = for(i <- 0 until h) yield readLine

  type Cell = (Int,Int)

  private[this] val used = Array.fill(w*h)(0)

  @tailrec
  def dfs(stk: Stack[Cell]): Boolean = {
    def next(now: Cell): List[Cell] = {
      List((0,-1), (1,0), (0,1), (-1,0))
      .flatMap{case (dx:Int, dy:Int) => List((now._1 + dx, now._2 + dy))}
      .filter((d:Cell) => 0 <= d._1 && 0 <= d._2 && d._1 < w && d._2 < h)
      .filter((d:Cell) => grid(d._2)(d._1)!='#' && used(d._1+d._2*w)==0)
    }

    val (now, res) = stk.pop2
    used(now._1+now._2*w)=1

    if(grid(now._2)(now._1)=='g') true
    else {
      val nx = next(now)
      if(res.size + nx.size == 0) false
      else dfs(res ++ nx)
    }
  }

  def main (args: Array[String]): Unit = {
    val res = for{
      sy <- 0 until h
      sx <- 0 until w
      if(grid(sy)(sx)=='s')
    } yield dfs(Stack((sx,sy)))

    println(if(res.fold(false)(_ | _))"Yes" else "No")
  }
}

Submission Info

Submission Time
Task A - 深さ優先探索
User TobiasGSmollett
Language Scala (2.11.5)
Score 0
Code Size 1106 Byte
Status TLE
Exec Time 2039 ms
Memory 65188 KB

Compile Error

warning: there were four deprecation warnings; re-run with -deprecation for details
one warning found

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 100
Status
AC × 5
AC × 37
TLE × 46
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 1227 ms 47540 KB
00_min_02.txt AC 1101 ms 46940 KB
00_min_03.txt AC 1098 ms 47064 KB
00_min_04.txt AC 1104 ms 47316 KB
00_min_05.txt AC 1110 ms 47436 KB
00_min_06.txt AC 1074 ms 47456 KB
00_min_07.txt AC 1068 ms 47520 KB
00_min_08.txt AC 1092 ms 47232 KB
00_sample_01.txt AC 1089 ms 47148 KB
00_sample_02.txt AC 1090 ms 47572 KB
00_sample_03.txt AC 1115 ms 47108 KB
00_sample_04.txt AC 1115 ms 47436 KB
00_sample_05.txt AC 1089 ms 46864 KB
01_rnd_00.txt AC 1318 ms 55652 KB
01_rnd_01.txt TLE 2039 ms 64124 KB
01_rnd_02.txt TLE 2034 ms 62376 KB
01_rnd_03.txt TLE 2034 ms 62844 KB
01_rnd_04.txt TLE 2035 ms 65188 KB
01_rnd_05.txt AC 1338 ms 55976 KB
01_rnd_06.txt TLE 2033 ms 62108 KB
01_rnd_07.txt TLE 2033 ms 62072 KB
01_rnd_08.txt AC 1318 ms 56080 KB
01_rnd_09.txt AC 1318 ms 56108 KB
01_rnd_10.txt TLE 2034 ms 62496 KB
01_rnd_11.txt AC 1300 ms 55464 KB
01_rnd_12.txt TLE 2034 ms 62816 KB
01_rnd_13.txt TLE 2034 ms 62452 KB
01_rnd_14.txt AC 1379 ms 55800 KB
01_rnd_15.txt TLE 2034 ms 61784 KB
01_rnd_16.txt AC 1314 ms 55960 KB
01_rnd_17.txt TLE 2034 ms 62128 KB
01_rnd_18.txt AC 1314 ms 55652 KB
01_rnd_19.txt TLE 2034 ms 62692 KB
02_rndhard_00.txt TLE 2033 ms 62836 KB
02_rndhard_01.txt TLE 2035 ms 62532 KB
02_rndhard_02.txt TLE 2034 ms 62348 KB
02_rndhard_03.txt TLE 2034 ms 62088 KB
02_rndhard_04.txt AC 1524 ms 60184 KB
02_rndhard_05.txt AC 1523 ms 59916 KB
02_rndhard_06.txt TLE 2035 ms 64000 KB
02_rndhard_07.txt AC 1381 ms 56088 KB
02_rndhard_08.txt TLE 2033 ms 63188 KB
02_rndhard_09.txt TLE 2034 ms 63396 KB
02_rndhard_10.txt TLE 2034 ms 62028 KB
02_rndhard_11.txt TLE 2034 ms 62064 KB
02_rndhard_12.txt TLE 2035 ms 62076 KB
02_rndhard_13.txt TLE 2033 ms 62972 KB
02_rndhard_14.txt TLE 2032 ms 63900 KB
02_rndhard_15.txt TLE 2033 ms 62544 KB
02_rndhard_16.txt TLE 2035 ms 62368 KB
02_rndhard_17.txt TLE 2033 ms 62480 KB
02_rndhard_18.txt TLE 2033 ms 63276 KB
02_rndhard_19.txt TLE 2034 ms 62408 KB
02_rndhard_20.txt TLE 2033 ms 63556 KB
02_rndhard_21.txt TLE 2034 ms 63404 KB
02_rndhard_22.txt TLE 2033 ms 62228 KB
02_rndhard_23.txt TLE 2034 ms 62536 KB
02_rndhard_24.txt TLE 2034 ms 63248 KB
02_rndhard_25.txt TLE 2032 ms 63152 KB
02_rndhard_26.txt TLE 2034 ms 61876 KB
02_rndhard_27.txt AC 1577 ms 59980 KB
02_rndhard_28.txt TLE 2035 ms 63424 KB
02_rndhard_29.txt TLE 2033 ms 63620 KB
02_rndhard_30.txt AC 1573 ms 56900 KB
02_rndhard_31.txt AC 1463 ms 57268 KB
02_rndhard_32.txt TLE 2034 ms 62740 KB
02_rndhard_33.txt TLE 2034 ms 62760 KB
02_rndhard_34.txt TLE 2033 ms 63400 KB
02_rndhard_35.txt TLE 2033 ms 63772 KB
02_rndhard_36.txt TLE 2033 ms 62456 KB
02_rndhard_37.txt TLE 2033 ms 62124 KB
02_rndhard_38.txt TLE 2034 ms 62944 KB
02_rndhard_39.txt TLE 2033 ms 62952 KB
03_rndhardsmall_00.txt AC 1096 ms 47052 KB
03_rndhardsmall_01.txt AC 1085 ms 47168 KB
03_rndhardsmall_02.txt AC 1089 ms 47444 KB
03_rndhardsmall_03.txt AC 1083 ms 47476 KB
03_rndhardsmall_04.txt AC 1092 ms 47000 KB
03_rndhardsmall_05.txt AC 1106 ms 47168 KB
03_rndhardsmall_06.txt AC 1148 ms 47252 KB
03_rndhardsmall_07.txt AC 1116 ms 47040 KB
03_rndhardsmall_08.txt AC 1081 ms 47560 KB
03_rndhardsmall_09.txt AC 1096 ms 47460 KB