#P1037. 【入门组双周赛 #1 B】异或与和(xoradd)
【入门组双周赛 #1 B】异或与和(xoradd)
题目描述
给你 个正整数 ,求一个非负整数 (),使得 $(a_1+k)+(a_2+k)+\cdots+(a_n+k)=(a_1+k)\oplus(a_2+k)\oplus\cdots\oplus(a_n+k)$,或者报告这不存在。
如果无解,令 。
其中 表示按位异或,即 C++ 中的 ^。
输入格式
从文件 xoradd.in 中读入数据。
第一行一个正整数 ,表示序列长度。
第二行 个正整数,表示 。
输出格式
输出到文件 xoradd.out 中。
输出一行一个非负整数,表示 ,若无解则输出 。
输入输出样例
2
2 5
8
说明/提示
【数据范围与约定】
对 的数据,保证 。