Advertisement
Guest User

Untitled

a guest
Mar 31st, 2020
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. from collections import deque
  2.  
  3. def waiter(number, q):
  4. primes = [2, 3, 0]
  5.  
  6. work_q = deque()
  7. backup_q = deque()
  8. prime_q = deque()
  9. for n in number:
  10. work_q.append(n)
  11.  
  12. for index in range(q):
  13. prime = primes[index]
  14.  
  15. while work_q:
  16. item = work_q.popleft()
  17. if item % prime == 0:
  18. prime_q.append(item)
  19. else:
  20. backup_q.append(item)
  21.  
  22. # Replace queues.
  23. temp = work_q
  24. work_q = backup_q
  25. backup_q = temp
  26.  
  27. # Push the results to a list and return.
  28. result = []
  29. while prime_q:
  30. item = prime_q.popleft()
  31. result.append(item)
  32.  
  33. while work_q:
  34. item = work_q.popleft()
  35. result.append(item)
  36.  
  37. return result
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement