Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

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()))))


Beautiful

  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)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: