|
|
A351224
|
|
Length of record run of consecutive numbers having the same Collatz trajectory length.
|
|
1
|
|
|
1, 2, 3, 5, 6, 7, 8, 9, 14, 17, 25, 27, 29, 30, 40, 41, 47, 52, 54, 60, 65, 77, 89, 96, 98, 120, 127, 130, 136, 152, 174, 176
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
COMMENTS
|
It appears that this sequence is infinite.
For every record number of consecutive identical terms in A006577, the run length is a term of this sequence.
This sequence is interesting because when A006577 is graphed on a scatter plot, it is immediately obvious that there are many runs of terms having the same value.
This sequence is related to A351104 where instead it returns the run length of the records.
|
|
LINKS
|
|
|
EXAMPLE
|
a(10)=17 since the 10th record run of identical consecutive trajectory lengths has a run length of 17.
trajectory numbers in run run
n length (1st is a(n)) length
-- ---------- -------------- ------
1 1 1 1
2 9 12, 13 2
3 18 28, 29, 30 3
4 25 98 ... 102 5
5 120 386 ... 391 6
6 36 943 ... 949 7
7 47 1494 ... 1501 8
8 42 1680 ... 1688 9
9 48 2987 ... 3000 14
10 57 7083 ... 7099 17
|
|
PROG
|
(Python)
import numpy as np
def find_records(m):
l=np.array([0]+[-1 for i in range(m-1)])
for n in range(len(l)):
path=[n+1]
while path[-1]>m or l[path[-1]-1]==-1:
if path[-1]%2==0:
path.append(path[-1]//2)
else:
path.append(path[-1]*3+1)
path.reverse()
for i in range(1, len(path)):
if path[i]<=m:
l[path[i]-1]=l[path[0]-1]+i
seq=[]
c, lsteps, record=1, 0, 0
for n in range(1, len(l)):
if l[n]==lsteps:
c+=1
else:
if c>record:
record=c
seq.append(c)
c=1
lsteps=l[n]
return seq
print(", ".join([str(i) for i in find_records(1000000)]))
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn,more
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|