ИОСИФ ФЛАВИЙ Задача
Одним из талантов, которыми обладал Иосиф Флавий, были математические способности, которые, по легенде, спасли ему жизнь. Когда римляне поймали в ловушку 40 последователей Флавия и его самого, они заключили договор о смерти, по которому римляне не получат их, а скорее умрут. Они взяли смертельные счета в кругу солдат. Каждый третий был убит. Счет продолжался до тех пор, пока не остался один человек. Именно мужчина занял в этом круге 31-е место. Да, это был Флавий. У него было другое мнение о жизни, смерти и своем особом назначении на этой войне. Ниже вы видите инструмент, который может рассчитать для вас любое количество чисел для любого выбранного числа и для любого оставшегося числа (меньше общего, конечно). Только помните, Флавий быстро решил такую ​​задачу в уме без какой-либо компьютерной программы.

Задача: найти местонахождение (индекс) единственного оставшегося в живых человека.

Вход.
Первая строка содержит N и M: 1<=N<=500, 1<=k<=100.


Выход:
Местонахождение (индекс) единственного оставшегося в живых человека.


Пример ввода:
10 3

Пример вывода:
4

Ответы

Ответ дал: лекция
0

N, M = map(int, input().split())

List = [i for i in range(1, N + 1)]

def recursive_de(List, M, k, index):

   if len(List) == 1:

       return print(*List)

   else:

       if index >= len(List):

           index = index - len(List)

       if k == 3:

           List.pop(index)

           k = 1

           return recursive_de(List, M, k, index)

       else:

           return recursive_de(List, M, k + 1, index + 1)

       

recursive_de(List, M, 1, 0)

Вас заинтересует