C. 深度优先搜索

    传统题 1000ms 256MiB

深度优先搜索

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

高桥君居住的城市呈长方形,被划分为网格状的区块。长方形的每条边都与东西或南北方向平行。每个区块要么是道路,要么是围墙。高桥君只能在道路上沿东西南北方向移动,不能斜向移动。同时,围墙区块无法通过。

请判断高桥君能否在不破坏围墙的情况下,仅通过道路到达鱼店。

输入格式

输入通过标准输入按以下格式给出。

H H W W
c0,0 c_{0,0} c0,1 c_{0,1} ... c0,W1 c_{0,W-1}
c1,0 c_{1,0} c1,1 c_{1,1} ... c1,W1 c_{1,W-1}
:
cH1,0 c_{H-1,0} cH1,1 c_{H-1,1} ... cH1,W1 c_{H-1,W-1}

  • 11 行包含两个整数 HH(城市南北方向长度,1H5001 \leq H \leq 500)和 WW(东西方向长度,1W5001 \leq W \leq 500),以空格分隔。
  • 接下来的 HH 行,每行包含 WW 个字符 ci,jc_{i,j}0iH1, 0jW10 \leq i \leq H-1,\ 0 \leq j \leq W-1),表示网格中每个区块的状态。
    • ii 行第 jj 个字符 ci,jc_{i,j} 取值为 sg.# 之一,表示坐标 (j,i)(j, i) 的区块状态:
      • s :该区块为高桥君的家。
      • g :该区块为鱼店。
      • . :该区块为道路。
      • # :该区块为围墙。
    • 高桥君可以通过家、鱼店和道路,但不能通过围墙。
    • 不能走出给定城市的范围。
    • sg 各出现一次。

输出格式

如果能够在不破坏任何围墙的情况下,从家到达鱼店,输出 Yes;否则输出 No。输出仅一行。

输入输出样例

4 5
s####
....#
#####
#...g
No
4 4
...s
....
....
.g..
Yes
10 10
s.........
#########.
#.......#.
#..####.#.
##....#.#.
#####.#.#.
g.#.#.#.#.
#.#.#.#.#.
###.#.#.#.
#.....#...
No
10 10
s.........
#########.
#.......#.
#..####.#.
##....#.#.
#####.#.#.
g.#.#.#.#.
#.#.#.#.#.
#.#.#.#.#.
#.....#...
Yes
1 10
s..####..g
No

2026年08月10日(星期一)C++信息学高级组周赛

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-8-10 13:30
结束于
2026-8-10 17:30
持续时间
4 小时
主持人
参赛人数
9