login
Number of steps to reach 1 in the Collatz 3x+1 problem starting with the n-th triangular number, or -1 if 1 is never reached.
1

%I #27 Aug 17 2017 10:56:26

%S 0,7,8,6,17,7,18,21,16,112,27,35,92,38,20,15,36,124,106,39,127,109,16,

%T 16,24,81,107,40,27,35,110,30,43,74,38,113,170,46,121,28,103,116,36,

%U 98,124,137,18,119,132,83,26,127,26,47,34,122,91,148,117,130,37,37,112,32,76,94,58,120,120,89,133,53,115,66

%N Number of steps to reach 1 in the Collatz 3x+1 problem starting with the n-th triangular number, or -1 if 1 is never reached.

%H Ryan Pythagoras Newton Critchlow, <a href="/A288023/b288023.txt">Table of n, a(n) for n = 1..10000</a>

%F a(n) = A006577(A000217(n)). - _Omar E. Pol_, Jun 04 2017

%e For n = 2, the 2nd triangular number is 3, which takes 7 steps to reach 1 in the Collatz (3x+1) problem: (10, 5, 16, 8, 4, 2, 1).

%t Table[Length[NestWhileList[If[EvenQ[#],#/2,3#+1]&,n,#>1&]]-1,{n,Accumulate[ Range[80]]}] (* _Harvey P. Dale_, Aug 17 2017 *)

%o (Python 3)

%o num = 1

%o def triangleN(x):

%o return x*(x+1)/2

%o def stepCount(x):

%o x = int(x)

%o steps = 0

%o while True:

%o if x == 1:

%o break

%o elif x % 2 == 0:

%o x = x/2

%o steps += 1

%o else:

%o x = x*3 + 1

%o steps += 1

%o return steps

%o while True:

%o print(stepCount(triangleN(num)))

%o num += 1

%Y Cf. A000217, A006577, A070975.

%K nonn

%O 1,2

%A _Ryan Pythagoras Newton Critchlow_, Jun 04 2017