Олимпиадный тренинг

Задача . C. Последовательность частичных произведений


Рассмотрим последовательность [a1, a2, ... , an]. Определим последовательность частичных произведений как .

Вам дано число n. Найдите такую перестановку последовательности [1, 2, ..., n], что её последовательность частичных произведений это некоторая перестановка чисел [0, 1, ..., n - 1].

Входные данные

В единственной строке ввода записано целое число n (1 ≤ n ≤ 105).

Выходные данные

В первой строке выведите «YES», если такая последовательность существует, или «NO», если такой последовательности не существует.

Если решение существует, то выведите вывести ещё n строк. В i-ой строке надо вывести только число ai. Элементы последовательности должны быть различными целыми положительными числами, не превышающими n.

Если решений несколько, можно вывести любое из них.

Примечание

Во втором примере корректной последовательности не существует.


Примеры
Входные данныеВыходные данные
1 7
YES
1
4
3
6
5
2
7
2 6
NO

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w644
Комментарий учителя