본문 바로가기

백준

백준12904 - A와 B

www.acmicpc.net/problem/12904

 

12904번: A와 B

수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수

www.acmicpc.net

오랜만에 블로그 글을 쓰게 된다. 그동안 네이버 커넥트재단 부스트캠프를 하느라고 블로그 활동이 뜸했지만 올해 목표인 블로그 글 100개 달성을 위해 노력할 것이다.

 

이 문제는 문자열 S에서 문자열 T로 변환이 가능한지 파악하는 문제이다. 규칙은 다음과 같다.

1. S는 T보다 짧다.

2. S에서 문자열 반전을 안하고 'A'를 붙인다.

3. S에서 문자열 순서를 반전하고 'B'를 붙인다.

 

S에서 T를 찾아가려면 어렵겠지만 T에서 S를 찾아가면 쉬운 문제였다. 그리고 S에서 A를 B로 바꾸는 것이 아니고 문자열을 뒤집는 것으로 이해해야 한다. 나는 전자로 해서 왜 틀렸지 생각했다가 내가 바보였다는 것을 알았다.

 

def solution(S, T):
  if(len(S) == len(T)):
    if(S == T):
      print(1)
    else:
      print(0)
  else:
    if T[len(T) - 1] == 'A':
      T = T[0:len(T) - 1]
    else:
      T = T[0:len(T) - 1]
      T = T[::-1]
    solution(S, T)

S = input()
T = input()

solution(S, T)

'백준' 카테고리의 다른 글

백준 2653 - 안정된 집단  (0) 2021.01.27
백준16922 - 로마 숫자 만들기  (0) 2021.01.26
백준2685 - 님비합  (0) 2020.08.25
백준2980 - 도로와 신호등  (0) 2020.08.09
백준14562 - 태권왕  (0) 2020.08.06