Advertisement
Guest User

Untitled

a guest
Aug 24th, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.42 KB | None | 0 0
  1. def cartesian_product(max_len: List[int]):
  2. n = len(max_len)
  3. stack = [0] * n
  4. deep = n
  5. while True:
  6. if deep == n - 1:
  7. print(stack)
  8. if stack[-1] + 1 < max_len[deep]:
  9. stack[-1] += 1
  10. if deep < n - 1:
  11. stack.append(0)
  12. deep += 1
  13. else:
  14. stack.pop()
  15. deep -= 1
  16. if deep < 0:
  17. break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement