Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. class Solution:
  2. def decodeString(self, s: str) -> str:
  3. multipliers = []
  4. sequences = []
  5.  
  6. last_multiplier = 0
  7. last_sequence = ''
  8.  
  9. for c in s:
  10. if c.isdigit():
  11. last_multiplier = last_multiplier * 10 + int(c)
  12. elif last_multiplier:
  13. multipliers.append(last_multiplier)
  14. last_multiplier = 0
  15.  
  16. if c == '[':
  17. sequences.append(last_sequence)
  18. last_sequence = ''
  19. elif c == ']':
  20. prev_sequence = ''
  21. if sequences:
  22. prev_sequence = sequences.pop()
  23. multiplier = multipliers.pop()
  24. last_sequence = prev_sequence + multiplier * last_sequence
  25. elif c.isalpha():
  26. last_sequence += c
  27.  
  28. return last_sequence
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement