Есть N дверей и K обезьян. Изначально все двери закрыты.
Раунд 1: 1-ая обезьяна посещает каждую дверь и переключает дверь (если дверь закрыта, она открывается; если она открыта, она закрывается).
Раунд 2 : 1-я обезьяна посещает каждую дверь и переключает дверь. Затем Вторая Обезьяна посещает каждую 2-ю дверь и переключает дверь.
, , ,
, , ,
Раунд k: 1-я обезьяна посещает каждую дверь и переключает дверь. , , , , , , , , , K-я обезьяна посещает каждую K-ую дверь и переключает дверь.
Ввод: NK (разделенный одним пробелом)
Вывод: номера дверей, которые открыты, каждая разделена одним пробелом.
Пример :
Вход: 3 3
Выход: 1 2
Ограничения :
0 <N <101
0 <= K <= N
Примечание :
Предположим, что N дверей пронумерованы от 1 до N, а K обезьян пронумерованы от 1 до K
Победит тот, у кого самый короткий код. Кроме того, вывод на дисплей для N = 23, K = 21
n=k=3
будет выводить, 1 2
так что вы не правы ... и 5 выходов 1 2 4
есть шаблон, но его гораздо менее очевидно, чем это.