(Translated by https://www.hiragana.jp/)
A025302 - OEIS
login
A025302
Numbers that are the sum of 2 distinct nonzero squares in exactly 1 way.
4
5, 10, 13, 17, 20, 25, 26, 29, 34, 37, 40, 41, 45, 50, 52, 53, 58, 61, 68, 73, 74, 80, 82, 89, 90, 97, 100, 101, 104, 106, 109, 113, 116, 117, 122, 136, 137, 146, 148, 149, 153, 157, 160, 164, 169, 173, 178, 180, 181, 193, 194, 197, 200, 202, 208, 212, 218, 225, 226, 229
OFFSET
1,1
COMMENTS
From Fermat's two squares theorem, every prime of the form 4k + 1 is a term (A002144). - Bernard Schott, Apr 15 2022
FORMULA
A025441(a(n)) = 1. - Reinhard Zumkeller, Dec 20 2013
MATHEMATICA
nn = 229; t = Table[0, {nn}]; lim = Floor[Sqrt[nn - 1]]; Do[num = i^2 + j^2; If[num <= nn, t[[num]]++], {i, lim}, {j, i - 1}]; Flatten[Position[t, 1]] (* T. D. Noe, Apr 07 2011 *)
a[1] = 5; a[ n_] := a[n] = Module[ {s = a[n - 1], t = True, j}, While[ t, s++; Do[ If[ i^2 + (j = Floor[Sqrt[s - i^2]])^2 == s && i < j, t = False; Break], {i, Sqrt[s/2]}]]; s]; (* Michael Somos, Jan 20 2019 *)
PROG
(Haskell)
a025302 n = a025302_list !! (n-1)
a025302_list = [x | x <- [1..], a025441 x == 1]
(Python)
from collections import Counter
from itertools import combinations
def aupto(lim):
s = filter(lambda x: x <= lim, (i*i for i in range(1, int(lim**.5)+2)))
s2 = filter(lambda x: x <= lim, (sum(c) for c in combinations(s, 2)))
s2counts = Counter(s2)
return sorted(k for k in s2counts if k <= lim and s2counts[k] == 1)
print(aupto(229)) # Michael S. Branicky, May 10 2021
CROSSREFS
Cf. A002144 (subsequence), A009000, A009003, A024507, A025441, A004431.
Cf. Subsequence of A001983; A004435.
Sequence in context: A230486 A024507 A004431 * A268379 A221265 A055096
KEYWORD
nonn
STATUS
approved