Questa è una CMC (chat mini challenge) che ho pubblicato nella nostra chatroom, The Ninteenth Byte , un po 'di tempo fa.
La sfida
Dato un numero intero positivo x, a seconda degli ultimi 2 bit di x, procedi come segue:
x & 3 == 0: 0
x & 3 == 1: x + x
x & 3 == 2: x * x
x & 3 == 3: x ^ x (exponentiation)
Input Output
Single Integer -> Single Integer
Una nuova riga finale è consentita nell'output. Non sono ammessi altri spazi bianchi.
Casi test
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
Questa è una sfida di code-golf , quindi vince il codice più corto!
x ^ x)? 32 bit non è già sufficiente per il test case 11e 64 bit non è sufficiente per il test case 19.
0caso esserex + 2, visto che gli altri sonox * 2,x ^ 2ex ^^ 2(tetrazione)? : P