반응형
코드
s = input()
t = input()
while 1:
if t[-1] == 'B':
t = t[:-1:] # 문자열 맨 뒤의 B 제거
t = t[::-1] # 문자열 뒤집기
elif t[-1] == 'A':
t = t[:-1] # 문자열 맨 뒤의 A 제거
if t == s:
print(1)
break
if len(t) == len(s):
print(0)
break
설명
순서를 s에서 t를 만드는 것이 아니라 t에서 s를 만드는 것으로 바꿔서 생각을 했다.
1. 문자열이 A로 끝나는 경우 A를 제거한다.
2. 문자열이 B로 끝나는 경우 B를 제거하고 문자열을 뒤집는다.
위의 과정을 반복하고 만약 s와 t의 길이가 같은데 문자열이 같지 않은 경우 0을 출력하고, 문자열이 같은 경우 1을 출력했다.
반응형
'알고리즘 > 그리디' 카테고리의 다른 글
[백준][Python] 수들의 합 (0) | 2022.11.01 |
---|---|
[백준][Python] 1461번 도서관 (0) | 2022.10.31 |
[백준][Python] 1339번 단어 수학 (0) | 2022.10.27 |
[백준][Python] 11256번 사탕 (1) | 2022.09.20 |
[백준][Python] 1439번 뒤집기 (0) | 2022.05.25 |
댓글