%I #9 May 10 2024 02:28:13
%S 40,45,48,49,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,
%T 71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,
%U 94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109
%N Numbers that are the sum of ten squares in five or more ways.
%H Sean A. Irvine, <a href="/A346804/b346804.txt">Table of n, a(n) for n = 1..10000</a>
%e 45 = 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 6^2
%e = 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 2^2 + 3^2 + 5^2
%e = 1^2 + 1^2 + 1^2 + 1^2 + 2^2 + 2^2 + 2^2 + 2^2 + 3^2 + 4^2
%e = 1^2 + 1^2 + 1^2 + 1^2 + 1^2 + 2^2 + 3^2 + 3^2 + 3^2 + 3^2
%e = 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 2^2 + 3^2
%e so 45 is a term.
%o (Python)
%o from itertools import combinations_with_replacement as cwr
%o from collections import defaultdict
%o keep = defaultdict(lambda: 0)
%o power_terms = [x**2 for x in range(1, 1000)]
%o for pos in cwr(power_terms, 10):
%o tot = sum(pos)
%o keep[tot] += 1
%o rets = sorted([k for k, v in keep.items() if v >= 5])
%o for x in range(len(rets)):
%o print(rets[x])
%Y Cf. A345502, A345553, A346805.
%K nonn
%O 1,1
%A _David Consiglio, Jr._, Aug 04 2021