Introdução
A arena é uma planície pontilhada de arranha-céus, que seus inimigos usam para se esconder. Você e seus inimigos se atiram com lasers. Todos vocês carregam jet packs, permitindo o vôo.
Quais inimigos você pode acertar com seu laser e quais estão escondidos?
Problema
Primeiro, o tamanho de uma arena é dado por um número inteiro nem uma única linha. As seguintes nlinhas contêm nnúmeros inteiros por linha separados por um espaço. Cada número inteiro representa a altura do edifício nesse local. Cada edifício é um sólido retangular, 1 unidade por 1 unidade por unidades de altura.
Em seguida, a sua localização é dada em uma única linha de três números de ponto flutuante x, y, z.
Finalmente, o número de inimigos é dado por um número inteiro mem uma única linha. As mlinhas a seguir contêm três números de ponto flutuante por linha, separados por um espaço. Estes representam os x, ye zcoordenadas de um inimigo. O sistema de coordenadas é definido da seguinte maneira:
xé medido da esquerda para a direita na entrada da cidadeyé medido de cima para baixozé medido a partir do zero
Para cada inimigo, se uma linha desobstruída puder ser traçada de você para esse inimigo, produza um número inteiro positivo . Caso contrário, imprima um número inteiro negativo . Separe as saídas com uma nova linha.
Entrada de amostra
Comentários, indicados por '#', estão presentes para ajudá-lo a ver rapidamente o que cada linha faz. Eles não estarão presentes na 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
Saída de amostra
Para a entrada de amostra acima, produzimos o seguinte:
-1
1
1
Suposições
- 0
n<<100 - 0
m<<100 - 0 <=
x<=n - 0 <=
y<=n - 0 <=
z<n - Os jogadores não estarão localizados dentro ou dentro de um canto, borda ou lateral de um edifício
- Sua linha de visão para um inimigo nunca será tangente ao canto, borda ou lateral de um edifício
- Um jogador não é uma obstrução