OFFSET
1,3
COMMENTS
Start with the value n and subtract the largest square (not previously used) less than or equal to n to get a new value. Repeat until the value 0 is reached or the square 1 has been subtracted. The resulting value is a(n). It is not hard to prove that a(n) always lies in 0..3 inclusive.
All nonzero terms are one greater than the previous term. - Iain Fox, Oct 17 2018
LINKS
Iain Fox, Table of n, a(n) for n = 1..10000
EXAMPLE
a(24)=3, since 24 -> 24 - 16 = 8 -> 8 - 4 = 4 -> 4 - 1 = 3.
MATHEMATICA
f[n_] := Block[{s = n, k = Floor@Sqrt@n}, While[k > 0, If[s >= k^2, s -= k^2]; k-- ]; s]; Array[f, 105] (* Robert G. Wilson v, Nov 22 2005 *)
PROG
(PARI) a(n) = my(s=sqrtint(n)); while(s > 0, if(n >= s^2, n -= s^2); s--); n \\ Iain Fox, Oct 17 2018
CROSSREFS
KEYWORD
easy,nonn
AUTHOR
John W. Layman, Nov 21 2005
STATUS
approved