💡문제접근
- 문자열 S를 문자열 T로 변환할 수 있는지에 대한 문제였다. S → T로 변환하려면 많은 가지치기를 통해서 모든 경우를 일일이 확인해야한다. 그래서 반대로 생각해서 T → S로 변환하는 경우를 생각했다.
- 문자열을 바꿀 때 두 가지 연산을 다음과 같이 바꿀 수 있다.
①. 문자열 맨 뒤의 문자가 A라면 A를 제거한다.
②. 문자열 맨 뒤의 문자가 B라면 B를 제거한 다음 문자열을 뒤집는다.
💡코드(메모리 : 31256KB, 시간 : 44ms)
import sys
input = sys.stdin.readline
S = list(input().strip())
T = list(input().strip())
while True:
if len(T) == len(S):
break
t = -1
if T[t] == "A":
T.pop()
elif T[t] == "B":
T.pop()
T = T[::-1]
S = ''.join(map(str, S))
T = ''.join(map(str, T))
if S == T:
print(1)
else:
print(0)
💡소요시간 : 3m