Frisbee – Regional event 2005

Level 1

ENONCE

C'est l'été, il fait 40° au soleil, les gens sortent, pique-niquent et s'adonnent à des jeux de plein air. Parmi ces derniers, le frisbee (discoplane pour nos amis québécois) semble revenu à la mode.

Mais le frisbee est un jeu difficile, il demande beaucoup l'agilité !

A partir d'une liste de gens jouant au frisbee (et de l'agilité de chacun), vous devez indiquer s'il est possible que ces gens se passent le frisbee chacun leur tour (dans l'ordre de la liste) et que ce dernier revienne au premier joueur.

L'agilité d'une personne indique la distance maximum avec laquelle une personne peut lancer le frisbee efficacement. Au delà de cette distance, on considére que la personne échoue toujours son lancer.

On remarquera que les joueurs sont disposés de manière à ce que la trajectoire du frisbee soit une droite horizontale ou verticale (c'est-à-dire que le joueur i à une et une seule coordonnée en commun avec le joueur i + 1).

CONTRAINTES

Votre programme doit gérer les listes contenant jusqu'à 200 joueurs.

ENTREE

La première ligne de l'entrée contient l'entier N (2 \<= N \<= 200) qui est le nombre de joueurs.

Les N lignes suivantes contiennent 3 entiers chacune : X, Y et A (-1000 \<= X, Y \<= 1000 et 1 \<= A \<= 30) représentant respectivement les coordonnées cartésiennes du joueur et son agilité.

SORTIE

La sortie contiendra le resultat de votre fonction : '1' s'il est possible que ces gens se passent le frisbee chacun leur tour et que ce dernier revienne au premier joueur, '0' sinon.

Runtime constraints

Maximum memory usage
1200 kilobytes
Maximum execution time
62 milliseconds

Input/output samples

Sample input
8
0 0 6
5 0 4
5 3 8
11 3 6
11 5 3
9 5 5
5 5 7
0 5 8
Sample output
1
Sample input
2
0 0 11
10 0 9
Sample output
0

Submit your solution

You have to register or log in to be able to submit your solution.