介绍
XOR是实现异或的数字逻辑门。大多数情况下,显示为^
。二进制可能出现的四种结果:
0 ^ 0 = 0
0 ^ 1 = 1
1 ^ 0 = 1
1 ^ 1 = 0
这也可以看作二进制的加模2。在十进制中,我们需要将十进制转换为二进制,35 = 100011
然后25 = 11001
。为了计算XOR值,我们将它们彼此叠加:
100011
11001 ^
--------
111010 = 58 in decimal
任务:给定大于1的整数N时,输出大小为N + 1的XOR表。例如,N = 5:
0 1 2 3 4 5
1 0 3 2 5 4
2 3 0 1 6 7
3 2 1 0 7 6
4 5 6 7 0 1
5 4 7 6 1 0
您会看到每个数字前面都有一个空格,因为表中的最高数量长度为1。但是,如果我们使N = 9,则会得到以下网格:
0 1 2 3 4 5 6 7 8 9
1 0 3 2 5 4 7 6 9 8
2 3 0 1 6 7 4 5 10 11
3 2 1 0 7 6 5 4 11 10
4 5 6 7 0 1 2 3 12 13
5 4 7 6 1 0 3 2 13 12
6 7 4 5 2 3 0 1 14 15
7 6 5 4 3 2 1 0 15 14
8 9 10 11 12 13 14 15 0 1
9 8 11 10 13 12 15 14 1 0
最高值的长度为2,因此该值与长度3右对齐(最高长度+ 1)。
规则:
- 仅在一致(或不连续)使用的情况下,前导空格不是强制性的
- 您必须以上面显示的形式输出表格。
- 列之间的填充应尽可能小
- 这是代码高尔夫球,因此以最少的字节提交为准!
output an XOR table with the size N+1