본문 바로가기
Algorithm/코딩테스트 (Python)

[백준][9625번] BABBA

by 싱브이 2024. 2. 28.
728x90
반응형

문제

상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다.

기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했다. 한 번 더 누르니 BA로 바뀌고, 그 다음에는 BAB, 그리고 BABBA로 바뀌었다. 상근이는 화면의 모든 B는 BA로 바뀌고, A는 B로 바뀐다는 사실을 알게되었다.

버튼을 K번 눌렀을 때, 화면에 A와 B의 개수는 몇 개가 될까?

 

 

 

 

 

내 생각

  • 1번 누를 때: A → B  : A 1개, B 1개
  • 2번 누를 때: B → BA  : A 1개, B 2개
  • 3번 누를 때: BA → BAB  : A 2개, B 3개
  • 4번 누를 때: BAB → BABBA  : A 3개, B 5개
  • 5 누를 : BABBA → BABBABAB  : A 5개, B 8개

→ 피보나치 수열인 것을 확인할 수 있다 !

A는 K-1번 째, B는 K번 째 값 !

 

 

 

내 코드

K = int(input())

fib = [0] * (K + 1)
fib[1] = 1

for i in range(2, K + 1):
    fib[i] = fib[i - 1] + fib[i - 2]

A_count = fib[K - 1]
B_count = fib[K]

print(A_count, B_count)
728x90
반응형

'Algorithm > 코딩테스트 (Python)' 카테고리의 다른 글

[백준][21921번] 블로그  (5) 2024.03.14
[백준][1189번] 컴백홈  (0) 2024.03.01
[백준][1727번] 커플 만들기  (1) 2024.02.24
[프로그래머스] 숫자의 표현  (0) 2024.02.22
[백준][7570번] 줄 세우기  (0) 2024.02.21

댓글