Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from collections import deque
- def waiter(number, q):
- primes = [2, 3, 0]
- work_q = deque()
- backup_q = deque()
- prime_q = deque()
- for n in number:
- work_q.append(n)
- for index in range(q):
- prime = primes[index]
- while work_q:
- item = work_q.popleft()
- if item % prime == 0:
- prime_q.append(item)
- else:
- backup_q.append(item)
- # Replace queues.
- temp = work_q
- work_q = backup_q
- backup_q = temp
- # Push the results to a list and return.
- result = []
- while prime_q:
- item = prime_q.popleft()
- result.append(item)
- while work_q:
- item = work_q.popleft()
- result.append(item)
- return result
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement