题目名称 702. 穿越栅栏
输入输出 maze1.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 GravatarMakazeu 于2012-03-31加入
开放分组 全部用户
提交状态
分类标签
USACO 搜索法 字符串
分享题解
通过:44, 提交:136, 通过率:32.35%
GravatarSamle 100 0.000 s 0.00 MiB C++
Gravatarlihaoze 100 0.000 s 0.00 MiB C++
Gravatarlihaoze 100 0.000 s 0.00 MiB C++
GravatarHoliye 100 0.003 s 1.21 MiB C++
GravatarHoliye 100 0.004 s 1.21 MiB C++
Gravatar明天 100 0.005 s 0.63 MiB C++
GravatarHoliye 100 0.005 s 0.63 MiB C++
Gravatarpα.Princesavs 100 0.005 s 1.17 MiB C++
GravatarQILIN 100 0.005 s 3.37 MiB C++
Gravatar明天 100 0.007 s 0.32 MiB Pascal
关于 穿越栅栏 的近10条评论(全部评论)
这一题读入真膈应人,调试了一上午,重新写了好几遍,结果最后发现不用处理换行。总之就是出口处走 $1$ 格,其他地方走 $2$ 格
Gravatarlihaoze
2022-03-20 13:38 6楼
数组开小了= =
GravatarHouJikan
2014-09-16 20:52 5楼
贴标程都错了。。
Gravatarhahaha
2014-06-21 21:33 4楼
这道题看似简单,但写的我不吭……看我代码就知道这题坑了我多长时间……
Gravatar苏轼
2013-05-25 18:05 3楼
这题写的真心二……直接存题给的图,然后判断扩展到的“空格”是隔板的空还是房间……有一种蛋蛋的忧桑……
Gravatarcstdio
2012-12-28 17:58 2楼
膜拜yxg这么快
GravatarMakazeu
2012-04-28 17:33 1楼

702. 穿越栅栏

★★   输入文件:maze1.in   输出文件:maze1.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目描述】

农夫John在外面的田野上搭建了一个巨大的用栅栏围成的迷宫。幸运的是,他在迷宫的边界上留出了两段栅栏作为迷宫的出口。更幸运的是,他所建造的迷宫是一个“完美的”迷宫:即你能从迷宫中的任意一点找到一条走出迷宫的路。给定迷宫的宽度W(1<=W<=38)及高度H(1<=H<=100)。 2*H+1行,每行2*W+1的字符以下面给出的格式表示一个迷宫。然后计算从迷宫中最“糟糕”的那一个点走出迷宫所需的步数(就是从最“糟糕”的一点,走出迷宫的最少步数)。(即使从这一点以最优的方式走向最靠近的出口,它仍然需要最多的步数)当然了,牛们只会水平或垂直地在X或Y轴上移动,他们从来不走对角线。每移动到一个新的方格算作一步(包括移出迷宫的那一步)这是一个W=5,H=3的迷宫:

+-+-+-+-+-+
|         |
+-+ +-+ + +
|     | | |
+ +-+-+ + +
| |     |  
+-+ +-+-+-+
+-+ +-+-+-+

如上图的例子,栅栏的柱子只出现在奇数行或奇数列。每个迷宫只有两个出口。

【输入格式】

第一行: W和H(用空格隔开)

第二行至第2 * H + 1行:  每行2 * W + 1个字符表示迷宫

【输出格式】

输出一个单独的整数,表示能保证牛从迷宫中任意一点走出迷宫的最小步数。

【输入样例】

5 3
+-+-+-+-+-+
|         |
+-+ +-+ + +
|     | | |
+ +-+-+ + +
| |     |  
+-+ +-+-+-+
+-+ +-+-+-+

【输出样例】

9