login
A357610
Start with x = 3 and repeat the map x -> floor(n/x) + (n mod x) until an x occurs that has already appeared, then that is a(n).
2
1, 2, 3, 2, 3, 3, 3, 4, 3, 4, 3, 3, 5, 6, 3, 6, 5, 3, 7, 5, 3, 8, 7, 3, 9, 6, 3, 10, 9, 3, 11, 8, 3, 12, 5, 3, 13, 10, 3, 14, 9, 3, 15, 11, 3, 16, 11, 3, 17, 5, 3, 18, 5, 3, 19, 12, 3, 20, 11, 3, 21, 14, 3, 22, 5, 3, 23, 8, 3, 24, 15, 3, 25, 14, 3, 26, 17, 3, 27, 5, 3, 28, 11, 3, 29, 18, 3, 30, 9
OFFSET
1,2
COMMENTS
1, 2 and the third column of A357554.
LINKS
FORMULA
a(n) = 3 if n is divisible by 3.
a(3*k+1) = k+1.
a(15*k+5) = 5 for k >= 1.
a(15*k+11) = 3*k+3.
a(255*k+137) = 15*k+9 for k >= 1.
EXAMPLE
a(4) = 2 because we have 3 -> floor(4/3) + (4 mod 3) = 2 -> floor(4/2) + (4 mod 2) = 2.
MAPLE
g:= proc(n, k) local x, S;
S:= {k};
x:= k;
do
x:= iquo(n, x) + irem(n, x);
if member(x, S) then return x fi;
S:= S union {x};
od
end proc:
seq(g(n, 3), n=1..100);
MATHEMATICA
T[n_, k_] := Module[{x, S}, S = {k}; x = k; While[True, x = Total@QuotientRemainder[n, x]; If[MemberQ[S, x], Return[x]]; S = S~Union~{x}]];
a[n_] := T[n, 3];
Table[a[n], {n, 1, 100}] (* Jean-François Alcover, Oct 17 2022, after Maple code *)
PROG
(Python)
def a(n):
seen, x = set(), 3
while x not in seen: seen.add(x); q, r = divmod(n, x); x = q + r
return x
print([a(n) for n in range(1, 90)]) # Michael S. Branicky, Oct 06 2022~
CROSSREFS
Cf. A357554.
Sequence in context: A083060 A346643 A272979 * A102351 A078173 A248005
KEYWORD
nonn,look
AUTHOR
J. M. Bergot and Robert Israel, Oct 06 2022
STATUS
approved