Grid Perigoso
Você recebe uma grade de tamanho que contém células vazias, células perigosas, uma célula inicial e uma célula de destino .
O nível de segurança de uma célula é a menor distância de Manhattan entre essa célula e qualquer célula perigosa. A distância de Manhattan entre duas células e é definida como
O nível de segurança de um caminho é o menor nível de segurança entre todas as células visitadas pelo caminho, incluindo as células e .
Você pode se mover de uma célula para outra célula adjacente para cima, para baixo, para a esquerda ou para a direita, sem sair dos limites da grade. Todas as células podem ser atravessadas, inclusive as células perigosas.
Encontre o maior nível de segurança possível entre todos os caminhos de
Input
A primeira linha contém dois inteiros e (; ) — o número de linhas e de colunas da grade, respectivamente.
Output
Imprima um único inteiro — o maior nível de segurança possível de um caminho de até .
Samples
Sample 1
Input
4 4 S... .D.. ..D. ...T
Output
1
Por exemplo, podemos seguir o caminho