cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A345510 Numbers that are the sum of ten squares in three or more ways.

This page as a plain text file.
%I A345510 #14 Jun 13 2025 11:25:20
%S A345510 34,37,40,42,43,45,46,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,
%T A345510 64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,
%U A345510 87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104
%N A345510 Numbers that are the sum of ten squares in three or more ways.
%H A345510 Sean A. Irvine, <a href="/A345510/b345510.txt">Table of n, a(n) for n = 1..1000</a>
%H A345510 <a href="/index/Rec#order_02">Index entries for linear recurrences with constant coefficients</a>, signature (2,-1).
%F A345510 From _Chai Wah Wu_, May 09 2024: (Start)
%F A345510 All integers >= 48 are terms. Proof: since 29 can be written as the sum of 5 positive squares in 3 ways and any integer >= 34 can be written as a sum of 5 positive squares (see A025429), any integer >= 63 can be written as a sum of 10 positive squares in 3 or more ways. Integers from 48 to 62 are terms by inspection.
%F A345510 a(n) = 2*a(n-1) - a(n-2) for n > 9.
%F A345510 G.f.: x*(-x^8 + x^7 - x^6 + x^5 - x^4 - x^3 - 31*x + 34)/(x - 1)^2. (End)
%e A345510 37 = 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 2^2 + 5^2
%e A345510    = 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 2^2 + 3^2 + 3^2 + 3^2
%e A345510    = 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 2^2 + 2^2 + 2^2 + 2^2 + 4^2
%e A345510    = 1^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2
%e A345510 so 37 is a term.
%o A345510 (Python)
%o A345510 from itertools import combinations_with_replacement as cwr
%o A345510 from collections import defaultdict
%o A345510 keep = defaultdict(lambda: 0)
%o A345510 power_terms = [x**2 for x in range(1, 1000)]
%o A345510 for pos in cwr(power_terms, 10):
%o A345510     tot = sum(pos)
%o A345510     keep[tot] += 1
%o A345510     rets = sorted([k for k, v in keep.items() if v >= 3])
%o A345510     for x in range(len(rets)):
%o A345510         print(rets[x])
%Y A345510 Cf. A345500, A345509, A345551.
%K A345510 nonn
%O A345510 1,1
%A A345510 _David Consiglio, Jr._, Jun 20 2021