Introducción
XOR es una puerta lógica digital que implementa un exclusivo o. La mayoría de las veces, esto se muestra como ^
. Los cuatro resultados posibles en binario:
0 ^ 0 = 0
0 ^ 1 = 1
1 ^ 0 = 1
1 ^ 1 = 0
Esto también puede verse como módulo de adición 2 en binario. En decimal, necesitamos convertir el decimal a binario, 35 = 100011
y 25 = 11001
. Para calcular el valor XOR, los colocamos uno encima del otro:
100011
11001 ^
--------
111010 = 58 in decimal
La tarea : cuando se le da un valor entero N mayor que 1, genera una tabla XOR con el tamaño N + 1. Por ejemplo, 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
Puede ver que hay un espacio delante de cada número, porque la cantidad más alta en la tabla tiene longitud 1. Sin embargo, si tomamos N = 9, obtenemos la siguiente cuadrícula:
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
El valor más alto tiene longitud 2, por lo que el valor está alineado a la derecha con la longitud 3 (longitud más alta + 1).
Reglas:
- Los espacios en blanco iniciales no son obligatorios, solo si se usan (o no) de manera consistente
- Debe generar una tabla en la forma que se muestra arriba.
- El relleno entre columnas debe ser lo más pequeño posible
- Este es el código de golf , por lo que gana el envío con la menor cantidad de bytes.
output an XOR table with the size N+1