Submission #10238551


Source Code Expand

r, c = gets.split.map(&:to_i)
sy, sx = gets.split.map { |i| i.to_i - 1 }
gy, gx = gets.split.map { |i| i.to_i - 1 }
cs = []
r.times do
  cs << gets.chomp.chars
end

visited = Array.new(r) { Array.new(c, -1) }

q = [[sy, sx]]
visited[sy][sx] = 0

while !q.empty? do
  cy, cx = q.shift
  if cy == gy && cx == gx
    puts visited[cy][cx]
    exit
  end
  (0..3).each do |i|
    ny = cy + [-1, 0, 1, 0][i]
    nx = cx + [0, -1, 0, 1][i]
    next if ny < 0 || nx < 0 || ny >= r || nx >= c
    next if cs[ny][nx] == "#" || visited[ny][nx] != -1

    visited[ny][nx] = visited[cy][cx] + 1
    q << [ny, nx]
  end
end

Submission Info

Submission Time
Task C - 幅優先探索
User fshuto
Language Ruby (2.3.3)
Score 100
Code Size 639 Byte
Status AC
Exec Time 15 ms
Memory 2300 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 25
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 7 ms 1788 KiB
subtask0_sample02.txt AC 7 ms 1788 KiB
subtask0_sample03.txt AC 15 ms 2300 KiB
subtask1_01.txt AC 12 ms 2300 KiB
subtask1_02.txt AC 12 ms 2300 KiB
subtask1_03.txt AC 11 ms 2300 KiB
subtask1_04.txt AC 15 ms 2300 KiB
subtask1_05.txt AC 12 ms 2300 KiB
subtask1_06.txt AC 13 ms 2300 KiB
subtask1_07.txt AC 7 ms 1788 KiB
subtask1_08.txt AC 9 ms 1916 KiB
subtask1_09.txt AC 12 ms 2300 KiB
subtask1_10.txt AC 9 ms 2044 KiB
subtask1_11.txt AC 15 ms 2300 KiB
subtask1_12.txt AC 13 ms 2300 KiB
subtask1_13.txt AC 12 ms 2300 KiB
subtask1_14.txt AC 8 ms 1916 KiB
subtask1_15.txt AC 12 ms 2300 KiB
subtask1_16.txt AC 12 ms 2300 KiB
subtask1_17.txt AC 14 ms 2300 KiB
subtask1_18.txt AC 13 ms 2300 KiB
subtask1_19.txt AC 12 ms 2300 KiB
subtask1_20.txt AC 12 ms 2300 KiB
subtask1_21.txt AC 13 ms 2300 KiB
subtask1_22.txt AC 12 ms 2300 KiB