login
a(n) = number of different ways of selecting the minimum number of operations chosen from f(x) = 3x+1 and g(x) = floor(x/2) needed to reach n when starting from 1
2

%I #26 Sep 29 2024 15:06:10

%S 1,1,1,2,1,4,1,1,6,1,3,1,14,1,2,5,5,1,28,1,1,4,1,9,5,9,1,48,1,1,2,3,

%T 10,1,1,15,5,23,12,2,1,131,1,3,1,4,6,3,20,5,2,1,1,27,5,43,34,25,1,4,1,

%U 1,332,1,5,5,2,1,10,8,12,3,37,5,5,4,10,2,1,1,39,5,63,68,67

%N a(n) = number of different ways of selecting the minimum number of operations chosen from f(x) = 3x+1 and g(x) = floor(x/2) needed to reach n when starting from 1

%C The minimum number of operations is A375494(n) and that minimum is attained by a(n) different sequences of operations.

%o (Python)

%o from itertools import product

%o seq = [None for _ in range(200)]

%o num = [ 0 for _ in range(len(seq))]

%o for L in range(0, 23):

%o for P in product((True, False), repeat=L):

%o x = 1

%o for upward in P:

%o x = 3*x+1 if upward else x//2

%o if x < len(seq):

%o if num[x] == 0 or L < seq[x]:

%o seq[x], num[x] = L, 1

%o elif L == seq[x]:

%o num[x] += 1

%o print(', '.join([str(x) for x in num]))

%Y Cf. A375494 (number of operations), A375496 (indices of 1's).

%K nonn

%O 0,4

%A _Russell Y. Webb_, Aug 18 2024