introduction
Écrivez un programme ou une fonction qui, étant donné les coordonnées de l'endroit où une fléchette atterrit sur une cible, renvoie le score de cette cible. Les coordonnées des fléchettes sont données sous forme de deux nombres entiers, x,y
mesurés à partir du centre du jeu de fléchettes, avec une précision millimétrique.
Comment marquer une fléchette
Fléchettes est un jeu joué en lançant une fléchette sur un plateau circulaire. Le jeu de fléchettes est divisé en 20 "coins" de taille égale. En partant du haut et dans le sens horaire, les sections ont des valeurs de 20,1,18,4,13,6,10,15,2,17,3,19,7,16,8,11,14,9,12 , 5. Si votre fléchette atterrit dans les parties noires ou blanches de l'un des coins, vous marquez la valeur indiquée à l'extérieur de ce coin.
.
Cependant, si votre fléchette atterrit dans l'anneau extérieur vert / rouge du jeu de fléchettes, vous marquez le double des points indiqués à l'extérieur du coin que vous avez touché. De même, en frappant l'anneau intérieur vert / rouge (celui entre les deux sections blanches / noires), vous marquez le triple du nombre indiqué à l'extérieur du coin. Si votre fléchette frappe le cercle le plus à l'intérieur (l'oeil de boeuf rouge), vous marquez à la place 50 points et enfin, si votre fléchette frappe le deuxième cercle le plus à l'intérieur (l'anneau vert autour de l'oeil de boeuf), vous marquez 25 points.
Les dimensions des anneaux, mesurées à partir du centre du jeu de fléchettes, sont les suivantes:
Bullseye (50): [0mm-6mm)
25: [6mm-16mm)
Inner Single: [16mm-99mm)
Triple: [99mm-107mm)
Outer Single: [107mm-162mm)
Double: [162mm-170mm)
Miss (0): 170mm+
Remarque 1: les images fournies sont fournies à titre d'illustration uniquement et ne sont pas à l'échelle.
Remarque 2: les mesures fournies sont approximatives et peuvent ne pas être exactes pour un véritable jeu de fléchettes.
Note 3: Toutes les mesures données sont [inclusive-exclusive)
. Aux fins de ce défi, nous n'allons pas nous inquiéter des fléchettes frappant le fil et rebondissant. Si la fléchette atterrit "sur le fil" avec l'une des lignes radiales, il appartient au répondeur de décider de rompre le lien dans le sens horaire ou antihoraire. Le sens de rupture des liens doit être cohérent et indiqué.
Remarque 4: Le jeu de fléchettes est suspendu de manière standard, le milieu de la section 20 étant directement au-dessus de la bulle et la section 3 directement en dessous de la bulle.
Contribution
Deux entiers représentant les x,y
coordonnées de l'endroit où la fléchette a atterri, mesurées en millimètres, par rapport au centre de la cible.
Sortie
Un seul entier, pour le nombre de points qui seraient attribués à une fléchette qui a atterri aux coordonnées données.
Échantillon
0,0 -> 50
2,101 -> 60
-163,-1 -> 22
6,18 -> 1
-6,18 -> 5
45,-169 -> 0
22, 22 -> 4 (if tie-broken clock-wise)
18(if tie-broken counter-clockwise)
-150,0 -> 11
-150,-1 -> 11
Notation
code-golf . Le moins d'octets dans votre code source gagne.
-150,-1
et -150,0
qui devraient à la fois donner 11
et peuvent être un cas de bord sur certaines implémentations, car il s'agit de la transition entre thêta convergeant vers -pi et thêta = + pi en coordonnées polaires. (Ma réponse initiale a échoué le 2e.)