给你一个长度为 的从
到
的排列
你可以执行以下操作任意次:
任选两个数
使
。
在你执行完所有操作之后执行以下操作:
从 到
按顺序执行,对于当前
,
最后,求最大的 。
:
表示二进制的异或位运算,对于每一个二进制位,相同为
,不同为
,例如,
,因为
。
排列: 长度为 的排列是由
个不同的整数组成的数组,这些整数从
到
按任意顺序排列。例如
是一个排列,但
不是一个排列(
在数组中出现了两次),
也不是一个排列(
,但数组中有
)。
第一行包含一个整数
![]()
,表示数组的大小。
第二行包含
个整数
。
输出一个数,表示最大的
。