OFFSET
1,4
COMMENTS
T(1,0) = 0 is defined in order to make the triangle of numbers regular.
T(n,k) = 1 whenever k is a power of 5 and k > 1.
LINKS
Pontus von Brömssen, Rows n = 1..32, flattened
EXAMPLE
Triangle begins:
n\k 0 1 2 3 4 5 6 7 8 9
-----------------------------------------------------
1: 0
2: 1 1
3: 6 1 1
4: 4 1 1 2
5: 1 1 0 0 0
6: 6 60 6 30 2 1
7: 48 2 3 12 0 1 6
8: 156 14 22 2 18 1 34 78
9: 12 36 3 48 0 1 138 198 10
10: 684 1 1 2 20 1 2 0 22 1872
T(10,7) = 0 because A335506 never enters a cycle.
PROG
(Python)
from sympy.ntheory.factor_ import digits
from functools import reduce
def drop(x, n, k):
# Drop all digits k from x in base n.
return reduce(lambda x, j:n*x+j if j!=k else x, digits(x, n)[1:], 0)
def cycle_length(n, k, m):
# Brent's algorithm for finding cycle length.
# Note: The function may hang if the sequence never enters a cycle.
if (m, n, k)==(5, 10, 7):
return 0 # A little cheating; see A335506.
p=1
length=0
tortoise=hare=1
nz=0
while True:
hare=drop(m*hare, n, k)
while hare and hare%n==0:
hare//=n
nz+=1 # Keep track of the number of trailing zeros.
length+=1
if tortoise==hare:
break
if p==length:
tortoise=hare
nz=0
p*=2
length=0
return length if not nz else 0
def A335505(n, k):
return cycle_length(n, k, 5) if n>1 else 0
CROSSREFS
KEYWORD
AUTHOR
Pontus von Brömssen, Jun 13 2020
STATUS
approved