#agc031d. [agc031_d]A Sequence of Permutations
[agc031_d]A Sequence of Permutations
问题描述
对于整数,和,判断是否存在一个排列,满足以下条件,并创建一个满足条件的排列。
- 对于所有,和的二进制表示中仅有一个位不同。
约束条件
- 输入中的所有值都是整数。
输入
输入通过标准输入给出,格式如下:
输出
如果不存在满足条件的排列,打印 NO
。
如果存在满足条件的排列,第一行打印 YES
。然后,第二行打印 ,之间用空格隔开。如果有多个解,任何一个都可以接受。
示例输入 1
2 1 3
示例输出 1
YES
1 0 2 3
排列的二进制表示为,其中任意相邻的元素恰好有一个不同的位。
示例输入 2
3 2 1
示例输出 2
NO