2 ms·
My favorite one: d = defaultdict(list) # Magic for i in range(2, 10000): for y in i in d and d.pop(i) or [i]: d[i+
by rullelito 3y ago
My favorite one:
d = defaultdict(list)
# Magic
for i in range(2, 10000):
for y in i in d and d.pop(i) or [i]:
d[i+y] += (y,)
# Not sure how to print this in a succinct way
print(sorted(list(set().union(*d.values()))))
- paulddraper 3y agoBeautiful from collections import defaultdict d = defaultdict(list) for i in range(2, 10000): for y in d.pop(i, [i]): d[i + y].append(y) for y in sorted(y for x in d.values() for y in x): print(y)