#P2224. CYC's Castle

CYC's Castle

题目描述

CYC有一个大城堡,它由 nm(n<=500,m<=500)n*m (n<=500,m<=500)个房间组成,每一个房间都有四面墙,用'-'和'|'表示,一些墙上是有门的,所有有门的墙用' '表示; 城堡内中某个房间存在一个魔法传送门,坐标为(xc,yc)(x_c,y_c);当人进入此房间便可以传送至城堡外 以下是一个很正常的城堡:


*-*-*-*-*
|       | 
* *-*-* *
| |   | | 
* *-*-* *
|       | 
*-*-*-*-*

可见 今天,CYC邀请了他的好朋友们来城堡参观,城堡的构造非常复杂,粗心的TSL_清灵梦(QBY)很快就迷路在了里面。他只记得自己没有上过楼。 机智的他想到了向学OI的你求助,他下载了CYC城堡的数据平面图发给了你,请你找到 最快使他离开城堡的方法

已知TSL_清灵梦的坐标为(xq,yq)(x_q,y_q)每次穿过门需要花1个时间单位,不考虑TSL_清灵梦穿过房间和转弯的时间。

程序名:castle

输入格式:

第1行:六个整数,分别为城堡的长宽n,mn,m 魔法门的坐标xc,ycx_c,y_c TSL_清灵梦的坐标 xq,yqx_q,y_q

第2到2*n+2行: 城堡的平面图

输入样例#1:

3 4 3 4 1 1
*-*-*-*-*
|       | 
* *-*-* *
| |   | | 
* *-*-* *
|       | 
*-*-*-*-*

输入样例#2:

5 5 1 1 5 5
*-*-*-*-*-*
|   |     | 
*-* * *-* *
|     |   | 
* *-* *-* *
| | |     | 
* * *-*-* *
| |   | | | 
* *-*-* * *
|       | | 
*-*-*-*-*-*
            

输出格式:

一个整数 表示TSL_清灵梦离开城堡最少所需要的时间

输出样例#1:

5

输出样例#2:

8

数据范围:

测试点编号 n<=n<= m<=m<= 特殊性质
121 ∼ 2 55
33
474 ∼ 7 2020
898 ∼ 9 100100
101310 ∼ 13 200200
141614 ∼ 16
171817 ∼ 18 500500
1919
2020

关于100%的数据,保证 n<=500,m<=500n<=500,m<=500

1<=xc,xq<=m1<=x_c,x_q<=m

1<=yc,yq<=n1<=y_c,y_q<=n 保证至少存在一条路可以使TSL_清灵梦离开城堡

注释:

I: 特殊性质请自己分析

II:本题由2024届CYC出题 QBY友情出镜