题号:NC21583
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld
题目描述
有一个矩形迷宫(1 ≤ n,m ≤ 50)
` #`表示墙 `.`表示空地
起点(r1,c1)终点(r2,c2)
每一步可以采取下面策略之一
- 花费1秒的时间走向相邻的空地
- 花费2秒的时间传送到四个基本方向最近的空地
最少需要几秒能从起点到达终点 如果不能输出-1
输入描述:
第一行输入两个整数n,m (1 ≤ n,m ≤ 50)
接下来n行每行m个字符表示迷宫
接下来一行四个整数r1,c1,r2,c2分别表示起点与终点
输出描述:
输出一个整数
示例1
输入
复制
4 4
.##.
.###
.###
....
0 0 3 3
示例2
输入
复制
7 6
......
#####.
#.###.
#####.
#.###.
#####.
#.....
0 0 6 1
备注:
30%的数据:n,m<=10
另外30%的数据:n,m<=40
另外40%的数据:n,m<=50