fork download
  1. import collections
  2. import sys
  3.  
  4. inputt = sys.stdin.readline
  5. printt = sys.stdout.write
  6.  
  7. t = int(inputt())
  8. for _ in range(t):
  9. func = list(inputt().rstrip())
  10. n = int(inputt())
  11. if n == 0: # n = 0 경우의 예외 처리; 'D'가 주어진 함수에 포함되어 있다면 'error'를 출력하도록
  12. if 'D' in func:
  13. inputt()
  14. nums = 'error\n'
  15. else:
  16. inputt()
  17. nums = ''
  18. else:
  19. nums = collections.deque(map(int, inputt().lstrip('[').rstrip(']\n').split(',')))
  20. cnt = 0
  21. for i in range(len(func)):
  22. if func[i] == "R":
  23. cnt += 1
  24. elif func[i] == "D": # 'D' 전까지의 'R'의 개수에 따라 적절한 방향에서 pop
  25. if nums:
  26. if cnt % 2:
  27. nums.pop()
  28. else:
  29. nums.popleft()
  30. else:
  31. nums = 'error\n'
  32. break
  33. if cnt % 2:
  34. nums.reverse() # 만약 함수에 'R'이 홀수 개 포함되어 있다면 reverse
  35. if nums != 'error\n':
  36. printt('[' + ','.join(map(str, nums)) + ']\n')
  37. else:
  38. printt(nums)
  39.  
Runtime error #stdin #stdout #stderr 0.16s 23532KB
stdin
1
RDD
1
[1]
stdout
Standard output is empty
stderr
Traceback (most recent call last):
  File "./prog.py", line 34, in <module>
AttributeError: 'str' object has no attribute 'reverse'