%I #23 Mar 08 2022 12:55:21
%S 0,1,2,3,4,5,6,7,8,9,10,11,21,31,41,51,61,71,81,91,20,12,22,32,42,52,
%T 62,72,82,92,30,13,23,33,43,53,63,73,83,93,40,14,24,34,44,54,64,74,84,
%U 94,50,15,25,35,45,55,65,75,85,95,60,16,26,36,46,56,66,76
%N Reverse each run of consecutive nonzero digits in the decimal expansion of n.
%C This sequence is a self-inverse permutation of the nonnegative integers.
%C This sequence first differs from A321474 for n = 102: a(102) = 102 whereas A321474(102) = 201.
%C This sequence first differs from A333659 for n = 101: a(101) = 101 whereas A333659(101) = 110.
%C This sequence first differs from A336956 for n = 102: a(102) = 102 whereas A336956(102) = 201.
%H Rémy Sigrist, <a href="/A352152/b352152.txt">Table of n, a(n) for n = 0..10000</a>
%H <a href="/index/Per#IntegerPermutation">Index entries for sequences that are permutations of the natural numbers</a>
%F a(10*n) = 10*a(n).
%e For n = 1024:
%e - we have two runs of consecutive nonzero digits: "1" and "24",
%e - the reverse of "1" is "1", that of "24" is "42",
%e - so a(1024) = 1042.
%o (Perl) sub a { my $v = shift; $v =~ s/[1-9]+/reverse($&)/ge; return $v; }
%o (Python)
%o from itertools import groupby
%o def A352152(n): return int(''.join(''.join(list(g) if k else list(g)[::-1]) for k, g in groupby(str(n),key=lambda x:x =='0'))) # _Chai Wah Wu_, Mar 08 2022
%Y Cf. A321474, A333659, A336956.
%K nonn,base,easy
%O 0,3
%A _Rémy Sigrist_, Mar 06 2022
|