Le xorspace d'un ensemble d'entiers est l'ensemble de tous les entiers qui peuvent être obtenus en combinant les entiers de départ avec l'opérateur xor au niveau du bit habituel ( ^
). Par exemple, le xorspace de (8, 4)
est (0, 4, 8, 12)
: 0 est 4 ^ 4, 12 est 4 ^ 8 et aucun autre nombre ne peut être atteint. Notez que les nombres de départ sont toujours inclus, par cette définition (par exemple, 4 est 4 ^ 4 ^ 4).
Votre objectif est d'écrire le programme le plus court qui prend en entrée une liste d'entiers non négatifs et génère le nombre d'éléments dans leur xorspace.
- Les failles standard sont interdites.
- L'entrée et la sortie peuvent être dans l'un des formats habituels . L'entrée est garantie pour être valide, non vide et sans doublons.
- Votre code devrait pouvoir traiter tous les cas de test en moins d'une journée .
Cas de test
Input: 0
Output: 1
Input: 6
Output: 2
Input: 8 4
Ouput: 4
Input: 0 256
Output: 2
Input: 256 259 3
Output: 4
Input: 60 62 94 101 115
Output: 32
Input: 60 62 94 101 115 40 91
Output: 32
Input: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
Output: 64
Input: 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384
Output: 32768
l{mxFdy
.