-->
当前位置:首页 > 题库

编程题:DFS

Luz4年前 (2022-09-05)题库447
邪恶的仙人掌皇帝拥有魔法桶,并淹没了魔法森林!画家和三只小刺猬现在必须回到海狸的巢穴,在那里他们将尽快远离水!

魔法森林地图由R行和C列组成。用“.”表示空地,用“*”表示淹没的田地,用“X”表示岩石。此外,海狸巢穴用“D”表示,画家和三只小刺猬用“s”表示。

每一分钟,画家和三只小刺猬就可以移动到附近的四块田地(上、下、左或右)。洪水每分钟都会扩大,因此所有与被洪水淹没的地相邻的空地也会被洪水淹没。水、画家和三只小刺猬都不能穿过岩石。当然,画家和三只小刺猬不能穿过被洪水淹没的田地,水也不能淹没海狸的巢穴。

编写一个程序,在给定一张魔法森林地图的情况下,输出画家和三只小刺猬安全到达海狸巢穴所需的最短时间。

注:画家和三只小刺猬不能进入即将被淹没的田地(在同一分钟内)。


### 输入格式:

第一行输入将包含两个小于或等于50的整数R和C。以下R行将分别包含C字符(“.”、“*”、“X”、“D”或“S”)。地图将只包含一个“D”字符和一个“S”字符。

### 输出格式:

输出画家和三只小刺猬安全到达海狸巢穴所需的最短时间。如果这是不可能的,输出单词“KAKTUS”在一行自己。

### 输入样例1:
in
3 3
D.*
...
.S.

### 输出样例1:
out
3


### 输入样例2:
in
3 3
D.*
...
..S

### 输出样例2:
out
KAKTUS

### 输入样例3:
in
3 6
D...*.
.X.X..
....S.

### 输出样例3:
out
6








答案:若无答案欢迎评论