아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Пещеры

시간 제한2초메모리 제한1024 MB

요약
동굴 n개가 있을 때, 각 이동이 1번 동굴이나 첫 번째 채워진 동굴 다음 동굴을 고르는 규칙 아래 모든 동굴을 채우는 이동 순서를 출력한다.
난이도

보통10점 중 5점

유형
그리디, 구현, 시뮬레이션
정답자
아직 제출이 없습니다

문제

Как известно, много лет назад оборотни, предки Джейкоба и его семьи, жили в пещерах неподалеку от залива. Причем дабы избежать всевозможных проблем все они жили по одиночке.

Однако, это еще не все странности оборотней того времени. Каждый раз, на протяжении суток после очередного солнечного затмения, оборотни, возвращаясь с охоты, могли заходить в свои пещеры только по очень странному правилу, описанному далее.

Издревле сложилось, что оборотни всегда охотятся стаями, поэтому на момент их возвращения с охоты все пещеры пусты. Для удобства понимания правила, по которому оборотни заходят в пещеры, пронумеруем пещеры натуральными числами от 11 до nn, начиная с самой дальней от залива пещеры.

Процесс заселения пещер состоит в следующем: сначала выбирается пещера, которую оборотни хотят заселить, или наоборот, из которой они хотят выселить оборотня. После этого, если там есть оборотень, то он выходит, а если нет, то оборотень туда заселяется.

Однако, вся сложность в том, что оборотни могут выбрать не любую пещеру, а либо пещеру с номером один, либо пещеру с номером x+1x+1, гдеxx --- первая занятая пещера.

Определите, в каком порядке оборотни могли заселять пещеры.

입력

В единственной строке дано одно натуральное число nn --- количество пещер и оборотней (1≤n≤201 \le n \le 20).

출력

В первой строке выведите число kk --- количество совершенных действий. Во второй строке выведите последовательность действий оборотней. Если пещера освобождается, то номер пещеры должен быть выведен со знаком минус. Иначе выводите просто номер заселяемой пещеры. Количество действий не должно превышать 10610^6. Если существует несколько возможных решений задачи, то разрешается вывести любое.

예제1

  1. 예제 1

    입력
    3
    
    예상 출력
    5
    1 2 -1 3 1