%I #14 Jan 24 2022 09:32:51
%S 0,4,8,12,1,5,9,13,2,6,10,14,3,7,11,15,64,68,72,76,65,69,73,77,66,70,
%T 74,78,67,71,75,79,128,132,136,140,129,133,137,141,130,134,138,142,
%U 131,135,139,143,192,196,200,204,193,197,201,205,194,198,202,206,195
%N Involution of nonnegative integers: Swap the positions of digits q0 <-> q1, q2 <-> q3, q4 <-> q5, etc. in the base-4 expansion of n (where n = ... + q4*256 + q3*64 + q2*16 + q1*4 + q0).
%H <a href="/index/Per#IntegerPermutation">Index entries for sequences that are permutations of the natural numbers</a>
%e 29 = 0*64 + 1*16 + 3*4 + 1, i.e., 131 in quaternary and when digits are swapped in pairs, results 1013 in quaternary (1*64 + 0*16 + 1*4 + 3 = 71 in decimal), thus a(29)=71.
%o (Scheme:) (define (A126006 n) (let loop ((n n) (s 0) (p 1)) (cond ((zero? n) s) (else (loop (floor->exact (/ n 16)) (+ s (* p (+ (* 4 (modulo n 4)) (modulo (floor->exact (/ n 4)) 4)))) (* p 16))))))
%o (C) uint32_t a(uint32_t n) { return ((n & 0x33333333) << 2) | ((n & 0xcccccccc) >> 2); } /* _Falk Hüffner_, Jan 23 2022 */
%o (PARI) a(n) = my(d=Vecrev(digits(n, 4))); if (#d % 2, d = concat(d, 0)); fromdigits(Vecrev(vector(#d, i, d[i+(-1)^(i-1)])), 4); \\ _Michel Marcus_, Jan 23 2022
%Y Cf. A126007. A057300 is the analogous permutation based on swapping the binary digits of n.
%Y Cf. A004442.
%K nonn,base
%O 0,2
%A _Antti Karttunen_, Jan 02 2007