#C. 二进制运算

    远端评测题 1000ms 125MiB

二进制运算

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

我们拥有一个长度为 nn 的正整数无序数列 AA ,其中这个数列中每一个数字都是不重复的。这些数列满足$n(2n-1) \le 4 (\sum_{i=1}^{n} A_{i}) -3 \le 2n(n+1) $

我们需要求出当对该数列进行按位异或运算 (A1A2An)(A_{1} \oplus A_{2} \oplus \cdots \oplus A_{n}) 后所取到的最大值。

输入格式

输入一个正整数 nn

输出格式

输出一个数,即数列执行按位异或后所得到的最大值。

样例

输入1

1

输出1

1

提示说明

对于 50%50\% 的数据,1N1061\le N \le 10^{6}

对于100%100\% 的数据,1N10181\le N \le 10^{18}

i=1nAi\sum_{i=1}^{n}A_{i} 表示的含义是 A1+A2++AnA_{1}+A_{2}+\cdots +A_{n}

\oplus 意为按位异或,其真值表如下图

A B Y
0 0
1 1
1 0
1 0

对于一个数字将其二进制的每一位按照此表进行运算即为按位运算,得到的结果就是异或值。例如 12=31 \oplus 2=3 其原因是 11 的二进制为 (01)2(01)_{2}22 的二进制为 (10)2(10)_{2} 我们一般从右往左的第一位称为第一位,那么第一位按照表中应为 11 00 对应结果为 11 同理第二位结果也是 11,那么最后的异或结果为 (11)2(11)_{2} 对应十进制下的 33

2023.4.8 青岛市图灵编程杯 周赛补题场

未认领
状态
已结束
题目
6
开始时间
2023-4-8 0:00
截止时间
2023-4-24 23:59
可延期
24 小时