최대 1 분 소요

문제링크 : https://www.acmicpc.net/problem/12904

A와 B 문제로, 문자열 S을 A를 합치거나 뒤집은 후 B를 합치는 것을 통해 문자열 T를 만들 수 있는가에 관한 문제

결국 T에서 S로 만들 수 있느냐를 따지면 되는데, 마지막 항이 A인지 B인지 확인하면

len(T) - len(S)의 반복으로 찾을 수 있음

현재 상황에서 최적 선택을 한다는 점에 그리디 알고리즘 문제


S = input()
T = input()

answer = 0
while len(S) < len(T):
    if T[-1] == 'A':
        T = T[:-1]
        if S == T:
            answer = 1
    else:
        T = T[:-1]
        T = T[::-1]
        if S == T:
            answer = 1
print(answer)

카테고리:

업데이트:

댓글남기기