异或或或
题号:NC219637
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

众所周知,掌握位运算是成为竞赛队一员的不可或缺的一环,现在有一个数组,请你找出’异或和’最大的区间,输出最大异或和,并且找到一个小于这个区间最大值的最小值x,使之与异或和最大值’或’起来的值最大。
 

输入描述:

输入共两行
第一行一个整数n,表示数组长度
第二行n个整数,表示数组元素a[i]
1 ≤ n ≤ 1000,1 ≤ a[i] ≤ 1000000000

输出描述:

输出一行,包含两个整数,分别表示最大异或和,以及x
 

示例1

输入

复制
4
2 2 4 5

输出

复制
6 1

说明

Hint
{2,4} 异或和最大,2^4 = 6,此时 x = 1,则(2^4)|1 = 7

备注: