Este es un CMC (mini desafío de chat) que publiqué en nuestra sala de chat, The Ninteenth Byte , hace un poco.
El reto
Dado un entero positivo x
, dependiendo de los últimos 2 bits de x
, haga lo siguiente:
x & 3 == 0: 0
x & 3 == 1: x + x
x & 3 == 2: x * x
x & 3 == 3: x ^ x (exponentiation)
De entrada y salida
Single Integer -> Single Integer
Se permite una nueva línea final en la salida. No se permite ningún otro espacio en blanco.
Casos de prueba
input output
1 2
2 4
3 27
4 0
5 10
6 36
7 823543
8 0
9 18
10 100
11 285311670611
12 0
Este es un desafío de código de golf , por lo que gana el código más corto.
x ^ x
) 32 bits ya no es suficiente para el caso de prueba 11
, y 64 bits no es suficiente para el caso de prueba 19
.
0
caso, serx + 2
, viendo que los otros sonx * 2
,x ^ 2
yx ^^ 2
(tetración)? : P