Ви знаєте ті дерев'яні іграшки з маленькими кульковими підшипниками, де об’єкт рухається по лабіринту? Це якось так. Враховуючи лабіринт і ряд рухів, визначте, куди закінчується м'яч.
Дошка тримається вертикально, а куля рухається лише силою тяжіння при обертанні дошки. Кожен "хід" - це обертання (у радіанах).
Лабіринт - це просто концентричні круглі стіни, кожна з яких має рівно один отвір у зовнішній коридор, подібний до цього (припустимо, ці стіни є колами, а не загостреними):

Як бачите, м'яч починається посередині і намагається вийти. М'яч буде миттєво провалитися , як тільки правильна орієнтація досягається, навіть якщо це на півдорозі через обертання. Одне обертання може спричинити падіння кулі через декілька отворів. Наприклад, обертання >= n * 2 * piдостатньо, щоб уникнути будь-якого лабіринту.
Для цілей гри куля, розташована в межах 0.001радіанів отвору, вважається «підходящою» і провалюється до наступного коридору.
Вхід:
Введення складається з двох частин:
Лабіринт задається цілим числом, що
nпредставляє скільки стін / отворів у лабіринті. Далі слідуютьnрядки, по одному номеру на кожному, що представляє місце проходу до наступного коридору.Рухи подаються у вигляді цілого числа, що
mвідображає, скільки рухів було зроблено, після чого (знову ж таки на окремих лініях)mобертання дошки в радіанах за годинниковою стрілкою (мінус проти годинникової стрілки).
Усі положення проходу задані як 0 rad = up, при цьому позитивні радіани йдуть за годинниковою стрілкою.
Для наведеного вище зразка зображення може входити так:
7 // 7 openings
0
0.785398163
3.14159265
1.74532925
4.71238898
4.01425728
0
3 // 3 moves
-3.92699082
3.14159265
0.81245687
Вихід:
Виведіть номер коридору, на якому закінчується куля. Коридори нульово індексуються, починаючи від центру, тому ви починаєте 0. Якщо ви проходите через один отвір, ви в коридорі 1. Якщо уникнути цілого лабіринту, виведіть будь-яке ціле число>= n
Для введення вибірки є три ходи. Перший призведе до того, що куля впаде через два отвори. Другий не знаходить відкриття, а третій знаходить одне . М'яч зараз знаходиться в коридорі 3, тому очікуваний вихід:
3
Поведінка не визначена для недійсного введення. Дійсний вхід добре сформований, з n >= 1і m >= 0.
Підрахунок балів - це стандартний код гольфу, найменша кількість виграних байтів. Стандартні лазівки заборонені. Введення даних не повинно бути жорстко закодованим, але його можна взяти зі стандартного вводу, аргументів, консолі тощо.
1, ви просто працювали з великими дірками, а не стрибаючи кулями до центру отвору, коли вони падають.
