joo

persistence.py

joo
Mar 16th, 2018 (edited)
274
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.49 KB | None | 0 0
  1. def persistence(n):
  2.     p = 0
  3.     while n > 9:
  4.         d, n = n, 1
  5.         while d:
  6.             d, m = divmod(d, 10)
  7.             n *= m
  8.         p += 1
  9.     return p
  10.  
  11.  
  12. from functools import reduce
  13. from operator import mul
  14.  
  15. def persistence_(n):
  16.     p = 0
  17.     while n > 9:
  18.         n = reduce(mul, map(int, str(n)))
  19.         p += 1
  20.     return p
  21.  
  22.  
  23. def persistence__(n):
  24.     p = 0
  25.     while n > 9:
  26.         n = reduce((lambda x, y: x * y), map(int, str(n)))
  27.         p += 1
  28.     return p
Add Comment
Please, Sign In to add comment