Задача №113761. Удаление чисел
В ряд выписаны натуральные числа от 1 до n и задано натуральное число k .
Выполняется один или несколько шагов по удалению чисел в этом ряду. На очередном шаге оставшиеся числа просматриваются в возрастающем порядке, и каждое k -е число удаляется. Если после очередного шага осталось меньше k чисел, то процесс удаления чисел завершается.
Необходимо определить, на каком шаге будет удалено число n , или выяснить, что оно не будет удалено до завершения процесса.
Например, пусть n = 13 , k = 2 .
- На первом шаге будут удалены числа 2 , 4 , 6 , 8 , 10 и 12 , останутся числа 1 , 3 , 5 , 7 , 9 , 11 и 13 ;
- На втором шаге будут удалены числа 3 , 7 и 11 , останутся числа 1 , 5 , 9 и 13 .;
- На третьем шаге будут удалены числа 5 и 13 , останутся числа 1 и 9 ;
- На четвертом шаге будет удалено число 9 , останется число 1 . Поскольку осталось одно число, процесс завершается.
Таким образом, число 13 будет удалено на третьем шаге. Требуется написать программу, которая по заданным числам n и k определяет, на каком шаге будет удалено число n .
Первая строка входных данных содержит целое число n ( 3 ≤ n ≤ 10 18 ). Вторая строка входных данных содержит целое число k ( 2 ≤ k ≤ 100 , k < n ).
Требуется вывести одно целое число — номер шага, на котором будет удалено число n , или число 0 , если число n не будет удалено.
Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.

13 2
3