#453. zbj的回家之路

zbj的回家之路

说明

zbj作为一个热(xiang)爱(dang)学(xian)习(yu)的好同学,每天都在掰着手指头等周末。
今天终于到了周五,等到下午六点他就又可以在寝室做两天咸鱼了。但是zbj上午上完课把钥匙丢在了教室,被wjw捡到了,所以他必须先去wjw手里取得钥匙才能回寝室。
于是机智的wjw为了方便zbj拿钥匙,他去配了好多把zbj的钥匙,分别放在不同的地方 (厉害了小老弟)。
现在zbj想要尽快的回到寝室中,他需要取得任意一把钥匙才能够回寝室,请你帮他计算出回寝室的最短路程。
学校可以被看做是一个n * n的网格,其中一些路有障碍,钥匙和家所在的地方也可以看做是道路,可以通过。zbj可以在任意一条道路中选择上下左右四个方向移动,一次移动算作一步。

输入格式

多组数据,T<=50,对于每组数据有:
第一行有两个整数n,m。
接下去n行每行m个字符,代表学校地图。
其中, '.'表示道路,'#'表示障碍物,'L' 表示zbj所在的位置,'W'表示钥匙的位置,'Q'表示寝室的位置。题目保证最少有一条路可以拿到钥匙并且回到寝室。

输出格式


zbj回寝室需要走的最少步数。

样例

8 10
W....#.#W#
..#..#...#
...Q##.#.#
##........
..##.#..##
..........
##..#...##
###..L....
17