일이 커졌어
시간 제한1초메모리 제한1024 MB
1부터 N까지를 순열로 배열해 홀수 번째는 곱하고 짝수 번째는 더하는 과정을 거쳐 시작값 1에서 최댓값을 만든다.
문제
정우는 정수 을 원하는 순서로 나열해 순열 을 만든 후, 이 순열을 이용해서 정우가 가지고 있는 정수 를 키우려고 한다. 의 초깃값은 이다.
정우는 를 부터 까지 씩 증가시키며 에 따라 정수 를 키울 수 있는데, 그 방법은 다음과 같다.
- 가 홀수라면 에 를 곱한다.
- 가 짝수라면 에 를 더한다.
예를 들어, 이고 순열 일 때, 는 , , , 으로 변한다.
정수 이 주어질 때, 정수 을 어떻게 나열해야 정수 를 최대로 키울 수 있는지 구해보자.
입력
정수 이 주어진다.
출력
정수 를 최대한 키울 수 있는 순열 을 공백으로 구분하여 출력한다. 만약 를 최대로 키우는 순열이 여러 개 존재한다면 아무 순열이나 하나 출력한다.