[백준/파이썬] 1672번 DNA 해독 풀이
업데이트:
문제 정보
- 문제 출처: 백준 온라인 저지
- 문제 링크: 1672번 DNA 해독
- 문제풀이 코드 GitHub 링크
- 제출 언어: Python 3
풀이
문제
주어진 DNA 문자열의 마지막 두 글자를 규칙표에 따라 하나로 축약하는 연산을 반복해 최종 한 글자를 구하는 문제입니다.
코드
input()
s=input()
d={'A':{'A':'A','G':'C','C':'A','T':'G'},
'G':{'A':'C','G':'G','C':'T','T':'A'},
'C':{'A':'A','G':'T','C':'C','T':'G'},
'T':{'A':'G','G':'A','C':'G','T':'T'}}
while len(s)>1: s=s[:-2]+d[s[-1]][s[-2]]
print(s)
설명
문자열 뒤에서 두 글자씩 꺼내 규칙표로 새 문자 하나를 만들고, 이 과정을 길이가 1이 될 때까지 반복합니다.
최종 남는 문자 하나가 정답입니다.
댓글남기기