problem34.py 303 B

123456789101112131415161718
  1. #!/usr/bin/env python
  2. from itertools import combinations
  3. from math import factorial
  4. def digits(n):
  5. return map(int, str(n))
  6. def facsum(n):
  7. return sum(facs[d] for d in digits(n))
  8. facs = map(factorial, range(10))
  9. s = 0
  10. for n in xrange(10, 99999):
  11. if n == facsum(n):
  12. s += n
  13. print s