A8895. Polo the Penguin and XOR operation
编程题
普及/提高-
知识点
题目描述
Little penguin Polo likes permutations. But most of all he likes permutations of integers from $0$ to $n$ , inclusive.
For permutation $p=p_{0},p_{1},...,p_{n}$ , Polo has defined its beauty — number .
Expression  means applying the operation of bitwise excluding "OR" to numbers $x$ and $y$ . This operation exists in all modern programming languages, for example, in language C++ and Java it is represented as "^" and in Pascal — as "xor".
Help him find among all permutations of integers from $0$ to $n$ the permutation with the maximum beauty.
For permutation $p=p_{0},p_{1},...,p_{n}$ , Polo has defined its beauty — number .
Expression  means applying the operation of bitwise excluding "OR" to numbers $x$ and $y$ . This operation exists in all modern programming languages, for example, in language C++ and Java it is represented as "^" and in Pascal — as "xor".
Help him find among all permutations of integers from $0$ to $n$ the permutation with the maximum beauty.
输入格式
The single line contains a positive integer $n$ ( $1<=n<=10^{6}$ ).
输出格式
In the first line print integer $m$ the maximum possible beauty. In the second line print any permutation of integers from $0$ to $n$ with the beauty equal to $m$ .
If there are several suitable permutations, you are allowed to print any of them.
If there are several suitable permutations, you are allowed to print any of them.
输入输出样例
输入 #1
4
输出 #1
20 0 2 1 4 3