35번 - 최솟값을 만들어요

스페셜 저지
시간 제한1
메모리 제한1024 MB
제출2
정답1
맞힌 사람1
정답 비율50.00%

문제

호반우는 $N$ 미만의 음이 아닌 정수를 하나씩 사용해서 $\displaystyle \sum_{i = 1}^{N - 1} a_{i} \oplus a_{i+1}$의 값이 최소가 되게 수열 $a_{1},a_{2},a_{3} , \cdots ,a_{N}$을 만들려고 한다.  $\oplus$는 Bitwise XOR 연산을 의미한다. 수열을 만들 때 $a_{N}$과 $a_{1}$의 관계가 사용되지 않아 아쉬워하는 호반우를 위해 만들 수 있는 수열 중에서 $a_{N} ⊕ a_{1}$의 값이 가장 작은 수열을 찾아보자.

입력

첫째 줄에 $N$이 주어진다. $(3 \leq N \leq 100\,000)$

출력

첫째 줄에 호반우가 만들 수 있는 조건을 만족하는 수열 중에서 $a_{N} ⊕ a_{1}$의 값이 가장 작은 수열을 공백을 두고 출력한다. 가능한 방법이 여러 가지라면 그중 아무거나 출력한다.

예제 1

예제 입력 1

3

예제 출력 1

1 0 2

예제 2

예제 입력 2

4

예제 출력 2

2 3 1 0

문제 정보

출처school > 경북대학교 > 2024 Goricon > F
출제자test_account
검수자-