The OEIS mourns the passing of Jim Simons and is grateful to the Simons Foundation for its support of research in many branches of science, including the OEIS.
login
The OEIS is supported by the many generous donors to the OEIS Foundation.

 

Logo
Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A127885 a(n) = minimal number of steps to get from n to 1, where a step is x -> 3x+1 if x is odd, or x -> either x/2 or 3x+1 if x is even; or -1 if 1 is never reached. 14

%I #27 Aug 20 2017 10:58:19

%S 0,1,7,2,5,8,16,3,11,6,14,9,9,17,17,4,12,12,20,7,7,15,15,10,23,10,23,

%T 10,18,18,31,5,18,13,13,13,13,21,26,8,21,8,21,16,16,16,29,11,16,16,24,

%U 11,11,24,24,11,24,19,24,19,19,32,32,6,19,19,27,14,14,14,27,14,27,14,14,22,22,27,27,9,22,22,22,9,9,22,22,17,22,17,30,17,17,30,30,12,30,17,17,17

%N a(n) = minimal number of steps to get from n to 1, where a step is x -> 3x+1 if x is odd, or x -> either x/2 or 3x+1 if x is even; or -1 if 1 is never reached.

%C In contrast to the "3x+1" problem (see A006577), here you are free to choose either step if x is even.

%C See A125731 for the number of steps in the reverse direction, from 1 to n.

%D M. J. Halm, Sequences (Re)discovered, Mpossibilities 81 (Aug. 2002), p. 1.

%H David Applegate, <a href="/A127885/b127885.txt">Table of n, a(n) for n = 1..1000</a>

%H <a href="/index/3#3x1">Index entries for sequences related to 3x+1 (or Collatz) problem</a>

%F a(1) = 0; and for n > 1, if n is odd, a(n) = 1 + a(3n+1), and if n is even, a(n) = 1 + min(a(3n+1),a(n/2)). [But with a similar caveat as in A257265] - _Antti Karttunen_, Aug 20 2017

%e Several early values use the path:

%e 6 -> 3 -> 10 -> 5 -> 16 -> 8 -> 4 -> 2 -> 1.

%e The first path where choosing 3x+1 for even x helps is:

%e 9 -> 28 -> 85 -> 256 -> 128 -> 64 -> 32 -> 16 -> 8 -> 4 -> 2 -> 1.

%p # Code from _David Applegate_: Be careful - the function takes an iteration limit and returns the limit if it wasn't able to determine the answer (that is, if A127885(n,lim) == lim, all you know is that the value is >= lim). To use it, do manual iteration on the limit.

%p A127885 := proc(n,lim) local d,d2; options remember;

%p if (n = 1) then return 0; end if;

%p if (lim <= 0) then return 0; end if;

%p if (n > 2 ^ lim) then return lim; end if;

%p if (n mod 2 = 0) then

%p d := A127885(n/2,lim-1);

%p d2 := A127885(3*n+1,d);

%p if (d2 < d) then d := d2; end if;

%p else

%p d := A127885(3*n+1,lim-1);

%p end if;

%p return 1+d;

%p end proc;

%t Table[-1 + Length@ NestWhileList[Flatten[# /. {k_ /; OddQ@ k :> 3 k + 1, k_ /; EvenQ@ k :> {k/2, 3 k + 1}}] &, {n}, FreeQ[#, 1] &], {n, 126}] (* _Michael De Vlieger_, Aug 20 2017 *)

%o (PARI) { A127885(n) = my(S,k); S=[n]; k=0; while( S[1]!=1, k++; S=vecsort( concat(apply(x->3*x+1,S), apply(x->x\2, select(x->x%2==0,S) )),,8); ); k } /* _Max Alekseyev_, Sep 03 2015 */

%Y A127886 gives the difference between A006577 and this sequence.

%Y Cf. A006577, A125731, A127887, A125195, A125686, A125719, A261870.

%Y Cf. A290100 (size of the final set when using Alekseyev's algorithm).

%Y Cf. also A257265.

%K nonn

%O 1,3

%A _David Applegate_ and _N. J. A. Sloane_, Feb 04 2007

%E Escape clause added to definition by _N. J. A. Sloane_, Aug 20 2017

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recents
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified May 21 21:53 EDT 2024. Contains 372738 sequences. (Running on oeis4.)