웹찢남

[백준 5430 AC 문제] PYTHON 본문

백준 Algorithm

[백준 5430 AC 문제] PYTHON

harry595 2021. 7. 20. 18:55

 

조건이 조금 복잡한 문제다.

이 문제는 꽤 input의 양이 크고 문자열을 계속 뒤집는 문제라 시간 복잡도에 유의해야 한다.

'R'이 들어왔을때 문자열을 계속 뒤집어야 하지만 실제로 뒤집는 것이 아니라 Flag를 하나 만들어

'D'가 들어왔을 떄 문자열이 기존과 달리 뒤집혀 있나 체크를 하면 된다. 

 

 

import json
answer=[]
N = int(input())
for i in range(N):
    rd=input()
    count=int(input())
    arr=input()
    arr=json.loads(arr)
    rcount=0
    errflag=0
    for j in rd:
        if j =='R':
            rcount+=1
        else:
            try:
                if rcount % 2 == 1:
                    del(arr[-1])
                else:
                    del(arr[0])
            except:
                errflag=1
                answer.append('error')
                break
    if errflag==0:
        if rcount % 2 == 1:
            answer.append(arr[::-1])
        else:
            answer.append(arr)
    else:
        errflag=0
for i in answer:
    print(str(i).replace(' ',''))
Comments