Advertisement
roman_gemini

Roman vs. Rostik

Jun 10th, 2015
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.51 KB | None | 0 0
  1. import random
  2. from time import time
  3.  
  4. dbl = lambda x: x << 1  # x * 2
  5. hlf = lambda x: x >> 1  # x / 2
  6.  
  7. gen = lambda count, max: [random.randrange(0, max) for x in range(1, count)]
  8.  
  9. roman = lambda a: map(dbl, list(a[:hlf(len(a))])) + map(hlf, list(a[hlf(len(a)):]))
  10.  
  11. rostik = lambda a: list(x << 1 for x in a[:len(a) >> 1]) + list(x >> 1 for x in a[len(a) >> 1:])
  12.  
  13. m = gen(1000000, 100)
  14.  
  15. start = time()
  16. roman(m)
  17. print("Roman: ", time() - start)
  18.  
  19. start = time()
  20. rostik(m)
  21. print("Rostik", time() - start)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement