문제 풀이/백준(BOJ)
[Python] 백준 12904번 : A와 B
희조당
2022. 8. 26. 14:18
728x90
https://www.acmicpc.net/problem/12904
12904번: A와 B
수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수
www.acmicpc.net
💡 문제 풀이
그리디..? 알고리즘 문제이다.
두 가지 연산만 할 수 있다.
- 끝에 A 붙이기
- 뒤집고 B 붙이기
따라서 마지막에 어떤 값이 오는지만 확인해서 문자열의 길이가 같을 때까지 역순으로 따져주면 된다.
즉, 끝에 A가 온다면 A를 빼주고 B가 온다면 B를 빼주고 뒤집으면 된다.
✔️ 느낀 점
그리디 알고리즘..? 문제 항목에서 찾았는데 그냥 문자열에 대한 이해를 물어보는 것 같다.
💻 코드
import sys
input = sys.stdin.readline
S = input().strip()
T = input().strip()
while len(S) != len(T):
if T[-1] == 'A': T = T[0:len(T)-1]
else: T = T[0:len(T)-1][::-1]
print(1 if S==T else 0)