Code de Gray : Décalage cyclique et XOR
C++
Hard
loops
Tâche «Code de Gray : Décalage cyclique et XOR»
Étant donné un entier N (1 ≤ N ≤ 20). Générez une séquence de 2^N nombres représentant le code de Gray pour les nombres de 0 à 2^N-1. Ensuite, pour chaque nombre de cette séquence, effectuez un décalage cyclique de sa représentation binaire vers la droite de 1 bit et appliquez l'opération XOR avec le nombre original. Affichez les valeurs obtenues dans l'ordre croissant des nombres originaux. Utilisez uniquement des boucles et des opérations binaires, en évitant la récursion.
Format d\ entrée
Un entier N (1 ≤ N ≤ 20).
Format de sortie
2^N entiers séparés par des espaces, chacun sur une nouvelle ligne.
Exemples
Exemple 1
ENTRÉE
3
1 2 3
4 5 6
7 8 9
SORTIE
15
Exemple 2
ENTRÉE
1 5
SORTIE
1 2 4 8 16
Exemple 3
ENTRÉE
5
1 2 3 4 5
2 3
SORTIE
12
Exemple 4
ENTRÉE
3
SORTIE
1
0
0
2
0
4
4
6
main.cpp