Вступ
Напишіть програму або функцію, яка, з огляду на координати місця, де дартс приземляється на дартс, повертає бал цього дартса. Координати дартса задаються у вигляді двох цілих чисел, x,y
виміряних від центру дартс, з міліметровою точністю.
Як забити дартс
Дартс - гра, яка грається, кидаючи дротик на круговій дошці. Дошка дартса ділиться на 20 «клинів» однакового розміру. Починаючи від верху та йдучи за годинниковою стрілкою, секції мають значення 20,1,18,4,13,6,10,15,2,17,3,19,7,16,8,11,14,9,12 , 5. Якщо ваш дротик приземляється в чорні або білі частини будь-якого з клинів, ви оцінюєте значення, вказане на зовнішній стороні цього клина.
.
Однак якщо ваш дротик приземлився у зовнішнє зелене / червоне кільце дартс, ви набираєте подвійні бали, зазначені на зовнішній стороні клина, який ви вдарили. Так само, потрапивши на внутрішнє зелене / червоне кільце (одне між двома білими / чорними ділянками), ви набираєте потрійне число, вказане на зовнішній стороні клина. Якщо ваш дротик потрапив у найпотаємніший коло (червоні бики-очі), ви наберете 50 балів і, нарешті, якщо ваш дротик потрапить у друге найпотаємніше коло (зелене кільце навколо бичачих очей), ви наберете 25 балів.
Розміри кілець, виміряні від центру дротику, такі:
Bullseye (50): [0mm-6mm)
25: [6mm-16mm)
Inner Single: [16mm-99mm)
Triple: [99mm-107mm)
Outer Single: [107mm-162mm)
Double: [162mm-170mm)
Miss (0): 170mm+
Примітка 1: Надані зображення є лише для ілюстрації та не мають масштабу.
Примітка 2: Наведені вимірювання є приблизними та можуть бути неточними до реальної дартс.
Примітка 3: Усі наведені вимірювання є [inclusive-exclusive)
. Для цілей цього виклику ми не будемо турбуватися про те, що дротики потраплять у дріт та відскакують. Якщо дротик приземляється «на дріт» однією з радіальних ліній, то вирішувати, чи потрібно розірвати краватку за годинниковою або проти годинникової стрілки, вирішувати відповідь. Напрямок розриву краватки повинен бути узгодженим та вказаним.
Примітка 4: Дартна панель вивішується стандартним способом, при цьому середина 20-ти секції знаходиться безпосередньо над бичачим оком, а 3-та секція - безпосередньо під бичком.
Вхідні дані
Два цілих числа, що представляють x,y
координати місця, куди приземлився дартс, виміряні в міліметрах відносно центру дартс.
Вихідні дані
Одне ціле число, для кількості точок, які будуть присвоєні дротику, який приземлився за заданими координатами.
Зразок
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
Оцінка балів
код-гольф . Виграє найменше байт у вихідному коді.
-150,-1
і -150,0
які повинні давати, 11
і можуть бути кращим випадком у деяких реалізаціях, оскільки це перехід між тетою, що сходить до -pi, і theta = + pi в полярних координатах. (Моя початкова відповідь не вдалася 2-го.)