Pesadilla de Navegación
El vecindario pastoral del Granjero John (GJ) tiene granjas , generalmente numerado/etiquetado . Una serie de caminos horizontales y verticales de diferentes longitudes conecta las granjas. Un mapa de estas granjas podría parecerse a la ilustración a continuación en la cual las granjas están etiquetadas .
Cada granja puede conectarse directamente a otras cuatro granjas a través de caminos que conducen exactamente al norte, sur, este y/u oeste. Además, las granjas solo son ubicadas en los puntos finales de las carreteras, y se puede encontrar alguna granja en cada punto final de cada camino. No hay dos caminos cruzados, y precisamente un camino (secuencia de caminos) une cada par de granjas.
GJ perdió su copia en papel del mapa de la granja y quiere reconstruirlo de la información de respaldo en su computadora. Esta información contiene líneas como el siguiente, uno para cada camino:
- Hay un camino de longitud que corre hacia el norte desde la granja # hasta la granja #
- Hay un camino de longitud que corre hacia el este desde la granja # hasta la granja #
Cuando GJ está recuperando estos datos, ocasionalmente lo interrumpe preguntas como las siguientes que recibe de su vecino, el granjero Bob:
- ¿Cuál es la distancia de Manhattan entre las granjas # y # ?
GJ responde a Bob cuando puede (a veces todavía no tiene suficiente datos aún). En el ejemplo anterior, la respuesta sería , ya que Bob quiere saber la distancia "Manhattan" entre el par de granjas. La distancia de Manhattan entre dos puntos y es solo (que es la distancia que un taxi debe viajar por las calles de la ciudad en una cuadrícula perfecta para conectar dos puntos , ).
Cuando Bob pregunta por un par de granjas en particular, y GJ aún no puede tener suficiente información para deducir la distancia entre ellos; en este caso, GJ se disculpa profusamente y responde con "".
Entrada
- Línea 1: Dos enteros separados por espacios: y .
- Líneas 2...M+1: Cada línea contiene cuatro entidades separadas por espacios, y que describen una carretera. y son números de dos granjas conectadas por una carretera, es su longitud y es un carácter que es 'N', 'E', 'S' o 'W' dando la dirección de la carretera de a .
- Línea M + 2: Un entero, , el número de consultas que hace el Granjero Bob.
- Líneas M+3…M+K+2: Cada línea corresponde a una consulta del granjero Bob y contiene tres enteros separados por espacios: , e . y son números de las dos granjas en la consulta y es el índice en los datos después de lo cual Bob pregunta por la consulta. El índice de datos está en la línea de los datos de entrada, y así sucesivamente.
Ejemplo de Entrada
7 6
1 6 13 E
6 3 9 E
3 5 7 S
4 1 3 N
2 4 20 W
4 7 2 S
3
1 6 1
1 4 3
2 6 6
Detalles de la Entrada
Este es el diseño de la granja dibujado arriba.
Salida
- Líneas 1…K: Un entero por línea, la respuesta a cada una de las consultas de Bob. Cada línea debe contener la medición de la distancia o , si es imposible determinar la distancia adecuada.
Ejemplo de Salida
13
-1
10
Detalles de la Salida
En el tiempo , GJ sabe que la distancia entre y es .
En el tiempo , la distancia entre y aún se desconoce.
Al final, la ubicación es unidades al oeste y al norte de , por lo que la distancia es .
Comments