Se te da un entero $n$. Encuentra una permutación $p$ (indexada desde $0$) de $0,1,\dots, n-1$ que satisfaga que para cada entero $i\in[0,n)$, $p_i\oplus i = p_i + i$.
Aquí $\oplus$ denota la operación O exclusivo bit a bit (XOR). El O exclusivo (XOR) es una operación lógica en álgebra booleana que da verdadero solo cuando las entradas difieren (una es verdadera y la otra falsa). En otras palabras, XOR devuelve un valor verdadero si y solo si los dos valores de entrada son diferentes. A continuación se muestra una tabla de verdad para XOR.
Un XOR bit a bit es una operación binaria que toma dos patrones de bits de igual longitud y realiza la operación lógica O exclusivo en cada par de bits correspondientes. Por ejemplo: $0101$ (decimal $5$) $\oplus$ $0011$ (decimal $3$) $= 0110$ (decimal $6$).
Entrada
La primera línea contiene un entero $n$ $(1\leq n\leq 10^6)$, que denota la longitud de la permutación.
Salida
Imprime $n$ enteros en una línea, que denotan $p_0, p_1, \dots, p_{n-1}$. Si no existe tal permutación, imprime $-1$ en su lugar.
Ejemplos
Entrada 1
3
Salida 1
0 2 1