Задача выжившего 🐍Python
В далёком королевстве существовала древняя традиция – круг наказания. N количество человек загонялись в яму смерти. Они стояли в круге, ожидая казни. Но Король всего лишь одному даровал #жизнь. Но это были не невинные люди – все они совершили тяжкие проступки. Судьба этих людей была в руках Короля, и закон требовал, чтобы каждый понёс справедливое наказание.
Отсчёт начинался с определённого человека, и казнь происходила через каждые k шагов. Круг с каждым шагом сжимался, страх и паника росли. Люди пытались предугадать, кто останется последним, но закономерность была сложной, и смертные осознавали: логика круга не оставляет шансов на везение.
Среди заключённых был один старец, кто не раз совершал ошибки, но имел дар разума – #математика. Он понимал, что если правильно рассчитать позиции, можно остаться живым. Бумага и карандаш не помогали – круг уменьшался, последовательность менялась с каждой казнью. Тогда он прибег к #алгоритм ам: написал код, который моделировал круг, шаги и выбывающих.
Программа вычислила единственное безопасное место – позицию, в которой он сможет остаться последним. #Логика, а не страх или хитрость спасла его. Остальные понесли заслуженное наказание.
А теперь посмотрим, как он рассчитал (рис. 1) Своим кодом старец может определить, в какую сторону ему встать, в зависимости от количества приговорённых (рис. 2-3).
Так математика спасла жизнь человеку, где плохие люди встречали справедливость, а единственный, кто остался, понимал цену логики и морали.
Пожалуйста подпишись, и напиши свои комментарии! Дальше будет ещё интереснее 😉