P2198【Codeforces Round #177 (Div. 1) 】保罗企鹅和XOR操作 | ||
|
问题描述
小保罗企鹅喜欢数列,但它最喜欢的是值为0到n的整数数列。
对于数列P= P0, P1, ..., Pn,保罗定义了它的美丽值=(0 XOR P0)+(1 XOR P1)+...+(n XOR Pn)
帮助保罗找到所有由0到n构成的序列中,美丽值最大的一个。
输入格式
一个整数n (1 ≤ n ≤ 10^6)
输出格式
第一行,一个整数,表示最大美丽值
第二行,一个由0到n构成的整数序列,该序列能得到最大美丽值
如果有多个满足条件的序列,输出其中字典序最小的
样例输入
4
样例输出
20
0 2 1 4 3