F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

逃离小F的迷宫!!!

Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 1    Accepted Submission(s): 1


Problem Description
这天小F在探索环印城的时候,不小心误入了一个迷宫!

这是一个H*W的迷宫,'#'表示障碍,'.'表示是空地可通行。

有一个人初始位置在$(S_x,S_y)$,他要到达$(T_x,T_y)$

有两种移动方式:

1. 走到相邻4个格子中的一个。
2. 开一次挂,瞬移到以自身为中心的5*5的矩阵的任一位置。

问到达目的地最少需要开几次挂。
 

Input
第一行一个正整数$T\leq100$,表示数据组数

对于每组测试样例,格式如下:

$H\ W$

$S_x\ S_y$

$T_x\ T_y$

$S_{11}...S_{1W}$
.

.

$S_{H1}...S_{HW}$
 

Output
对于每组测试样例,输出一行表示从起点达到终点的最少开挂次数。若无法达到终点,输出-1


 

Sample Input
1 4 4 1 1 4 4 ..#. ..#. .#.. .#..
 

Sample Output
1 样例解释:小F可以先走到(2,2),然后开挂一次瞬移到(4,4)即可(当然最优方案不止这一种)
 

Hint

1<=H,W<=1000
1<=Sx,Sy<=H
1<=Tx,Ty<=W
保证起点和终点不会重合且必定是空地
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2025 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2025-03-28 20:36:18, Gzip enabled