Introducción
La arena es una llanura salpicada de rascacielos, que tus enemigos usan para cubrirse. Tú y tus enemigos se disparan con láser. Todos ustedes llevan mochilas propulsoras, permitiendo el vuelo.
¿A qué enemigos puedes golpear con tu láser y cuáles se esconden?
Problema
Primero, el tamaño de una arena está dado por un número entero n
en una sola línea. Las siguientes n
líneas contienen n
enteros por línea separados por un espacio. Cada número entero representa la altura del edificio en esa ubicación. Cada edificio es un sólido rectangular, 1 unidad por 1 unidad por unidades de altura.
A continuación, su ubicación se da en una sola línea como tres números de punto flotante x
, y
, z
.
Finalmente, el número de enemigos viene dado por un número entero m
en una sola línea. Las siguientes m
líneas contienen tres números de coma flotante por línea separados por un espacio. Estos representan el x
, y
y las z
coordenadas de un enemigo. El sistema de coordenadas se define de la siguiente manera:
x
se mide de izquierda a derecha en la entrada de la ciudady
se mide de arriba a abajoz
se mide desde cero
Para cada enemigo, si se puede trazar una línea sin obstrucciones hacia ese enemigo, genera un número entero positivo . De lo contrario, genera un entero negativo . Salidas separadas con una nueva línea.
Entrada de muestra
Los comentarios, indicados con '#', están presentes para ayudarlo a ver rápidamente qué hace cada línea. No estarán presentes en la entrada real.
5 # Size of the map
0 0 0 0 0 # Buildings
0 0 0 0 0 # Buildings
4 4 4 4 4 # Buildings
0 0 0 0 0 # Buildings
0 0 0 0 0 # Buildings
2.5 0.0 4.0 # Your location
3 # Number of enemies
2.5 5.0 0.1 # Enemy location
2.5 5.0 5.0 # Enemy location
0.0 2.7 4.5 # Enemy location
Salida de muestra
Para la entrada de muestra anterior, mostramos lo siguiente:
-1
1
1
Supuestos
- 0
n
<<100 - 0
m
<<100 - 0 <=
x
<=n
- 0 <=
y
<=n
- 0 <=
z
<n
- Los jugadores no estarán ubicados dentro o dentro de una esquina, borde o costado de un edificio
- Su línea de visión hacia un enemigo nunca será tangente a la esquina, el borde o el costado de un edificio.
- Un jugador no es una obstrucción.