题目描述
すぬけ君は N 枚の帽子を持っています。i 枚目の帽子には整数 ai が書かれています。
N 頭のラクダが円環状に並んでいます。 すぬけ君はそれぞれのラクダに 1 枚の帽子を被せようとしています。
どのラクダについても以下の条件が成立するような帽子の被せ方が存在するならば Yes を、そうでなければ No を出力してください。
- 両隣のラクダが被っている帽子に書かれた数のビットごとの排他的論理和が自身の被っている帽子に書かれた数と等しい
ビットごとの排他的論理和について n 個の非負整数 x1,x2, …, xn の排他的論理和 x1 ⊕ x2 ⊕ … ⊕ xn は以下のように定義されます。
- x1 ⊕ x2 ⊕ … ⊕ xn を二進表記した際の 2k(k ≥ 0) の位の数は x1,x2, …, xn のうち、二進表記した際の 2k(k ≥ 0) の位の数が 1 となるものの個数が奇数ならば 1、そうでなければ 0 となる。
例えば、3 ⊕ 5 = 6 となります。
输入格式
入力は以下の形式で標準入力から与えられる。
N a1 a2 … aN
输出格式
答えを出力せよ。
题目大意
题目描述
- 给出 N 个整数,第 i 个整数为 ai。
- 请回答这些整数能否通过改变排列实现下面的规则。可以输出'
Yes',否则输出'No'。
- 排列规则:对于排列后的第 i 个整数,其值等同于第 i−1 个整数与第 i+1 个整数的按位异或值。
- 特别的是:当 i=1 时,i−1=N;当 i=N 时,i+1=1。
什么是异或?
n 个非负整数 x1,x2,…,xn 的按位异或 x1⊕x2⊕…⊕xn 定义如下:
- 当 x1⊕x2⊕…⊕xn 的结果以二进制形式书写时, 第 2k 个数字(k≥0) 是 1 当且仅当 x1,x2,…,xn 共有奇数个整数的二进制形式中第 2k 位是 1。 反之则为 0。举个例子:3⊕5=6。
样例解释
样例1
按照 1,2,3 这种顺序排列是合法的,所以答案为'Yes'。
样例2
没有任何一组合法的排列方式,所以答案为'No'。
3
1 2 3
Yes
4
1 2 4 8
No
提示
制約
- 入力は全て整数
- 3 ≤ N ≤ 105
- 0 ≤ ai ≤ 109
Sample Explanation 1
- 1,2,3 が書かれた帽子を時計回りに被せたとき、どのラクダも問題文中の条件を満たすため、答えは Yes となります。
Sample Explanation 2
- そのような被せ方は存在しません。よって、答えは No となります。