—Walker, están ahí abajo —dice Trivette.
Walker pide silencio con el dedo. Ambos están encima del tejado roto
de una fábrica abandonada, donde
malvados están ocupados haciendo de las suyas. Walker está calculando el
punto de la fábrica al que debería tirarse desde el tejado. En concreto,
Walker quiere aterrizar en aquel punto de la fábrica tal que esté lo más
cerca posible de todos los malvados, o sea, el punto tal que la
suma de las distancias (incluyendo movimientos en diagonal)
entre el punto y los malvados sea mínima. Por ejemplo, si los malvados
(‘X’) están situados sobre el mapa del siguiente modo
X...X.
..abX.
......
..X...
entonces el punto (‘a’) está a distancia 2 de todos
ellos, por lo que la suma de distancias es 2+2+2+2 = 8, mientras que el
punto (‘b’) está a distancias 3, 1, 1 y 2, por lo que la
suma total es 7. Walker preferiría aterrizar en el punto
‘b’ antes que en el punto ‘a’. Además del
punto (‘b’), hay otros 3 puntos de aterrizaje cuya suma de
distancias es 7. Se permite que Walker aterrice encima de un malvado (de
hecho, uno de los 3 puntos anteriores consiste en aterrizar encima del
malvado de la segunda fila).
Se te pide que ayudes a Walker encontrando la suma de distancias mínimas (en el ejemplo anterior, 7), y el número de puntos distintos con tal distancia mínima (en el ejemplo anterior, 4).
Cada entrada contiene un único caso de pruebas, con dos números
y
(filas y columnas) con las dimensiones de la fabríca abandonada,
seguidos de
líneas de
caracteres cada una, bien ‘.’ (espacio vacío) o
‘X’ (los
malvados). En todos los ejemplos los malvados han sido distribuidos al
azar. Fíjate, además, que en al menos 80 de los 100 puntos del problema,
hay muchos más espacios vacíos que espacios ocupados por malvados.
Escribe una línea (acabada en salto de línea) con dos números separados por un espacio: la mejor suma de distancias posible, y el número de puntos donde es posible aterrizar con tal suma de distancias.
TestA: Entradas con y .
TestB: Entradas con y .
TestC: Entradas con y .
TestD: Entradas con y .
TestE: Entradas con y cualquiera.
Input
4 6 X...X. ....X. ...... ..X...
Output
7 4
Input
5 12 ...X......XX X......X...X .X.X.....XX. .......X.... ..XX.X......
Output
49 2
Input
4 4 .... .... .... ....
Output
0 16
Input
5 2 .X .. .. .. X.
Output
4 8