Svoboda | Graniru | BBC Russia | Golosameriki | Facebook
login
A345546
Numbers that are the sum of nine cubes in seven or more ways.
8
624, 629, 631, 650, 657, 687, 694, 707, 713, 720, 727, 744, 746, 753, 755, 763, 768, 770, 777, 779, 781, 784, 786, 789, 792, 796, 798, 803, 805, 807, 818, 820, 822, 824, 831, 833, 840, 842, 844, 847, 848, 849, 854, 859, 861, 866, 868, 870, 873, 875, 876, 877
OFFSET
1,1
LINKS
EXAMPLE
629 is a term because 629 = 1^3 + 1^3 + 1^3 + 1^3 + 1^3 + 1^3 + 3^3 + 5^3 + 6^3 = 1^3 + 1^3 + 1^3 + 1^3 + 4^3 + 4^3 + 4^3 + 4^3 + 4^3 = 1^3 + 1^3 + 1^3 + 2^3 + 3^3 + 4^3 + 4^3 + 4^3 + 5^3 = 1^3 + 1^3 + 1^3 + 3^3 + 3^3 + 3^3 + 3^3 + 3^3 + 6^3 = 1^3 + 1^3 + 2^3 + 2^3 + 3^3 + 3^3 + 4^3 + 5^3 + 5^3 = 1^3 + 2^3 + 2^3 + 2^3 + 2^3 + 3^3 + 3^3 + 4^3 + 6^3 = 2^3 + 3^3 + 3^3 + 3^3 + 3^3 + 3^3 + 4^3 + 4^3 + 4^3.
PROG
(Python)
from itertools import combinations_with_replacement as cwr
from collections import defaultdict
keep = defaultdict(lambda: 0)
power_terms = [x**3 for x in range(1, 1000)]
for pos in cwr(power_terms, 9):
tot = sum(pos)
keep[tot] += 1
rets = sorted([k for k, v in keep.items() if v >= 7])
for x in range(len(rets)):
print(rets[x])
KEYWORD
nonn
AUTHOR
STATUS
approved