introduction
L'arène est une plaine parsemée de gratte-ciel, que vos ennemis utilisent pour se couvrir. Vous et vos ennemis vous tirez dessus avec des lasers. Vous transportez tous des jet packs, permettant le vol.
Quels ennemis pouvez-vous frapper avec votre laser et lesquels se cachent?
Problème
Tout d'abord, la taille d'une arène est donnée par un entier nsur une seule ligne. Les nlignes suivantes contiennent des nentiers par ligne séparés par un espace. Chaque entier représente la hauteur du bâtiment à cet endroit. Chaque bâtiment est un solide rectangulaire de 1 unité par 1 unité de hauteur.
Ensuite, votre position est donnée sur une seule ligne en trois nombres à virgule flottante x, y, z.
Enfin, le nombre d'ennemis est donné par un entier msur une seule ligne. Les mlignes suivantes contiennent trois nombres à virgule flottante par ligne séparés par un espace. Ceux-ci représentent le x, yet les zcoordonnées d'un ennemi. Le système de coordonnées est défini comme suit:
xest mesurée de gauche à droite dans l'entrée villeyest mesuré de haut en baszest mesuré à partir de zéro
Pour chaque ennemi, si une ligne dégagée peut être tracée de vous vers cet ennemi, émettez un entier positif . Sinon, sortez un entier négatif . Sorties séparées avec une nouvelle ligne.
Exemple d'entrée
Les commentaires, notés «#», sont présents pour vous aider à voir rapidement ce que fait chaque ligne. Ils ne seront pas présents dans l'entrée réelle.
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
Exemple de sortie
Pour l'exemple d'entrée ci-dessus, nous générons les éléments suivants:
-1
1
1
Hypothèses
- 0
n<<100 - 0
m<<100 - 0 <=
x<=n - 0 <=
y<=n - 0 <=
z<n - Les joueurs ne seront pas situés sur ou à l'intérieur d'un coin, d'un bord ou d'un côté d'un bâtiment
- Votre ligne de vue vers un ennemi ne sera jamais tangente au coin, au bord ou au côté d'un bâtiment
- Un joueur n'est pas une obstruction