Ruff! Ruff!
#[C++] 9625 - BABBA 본문
https://www.acmicpc.net/problem/9625
문제
상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다.
기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했다. 한 번 더 누르니 BA로 바뀌고, 그 다음에는 BAB, 그리고 BABBA로 바뀌었다. 상근이는 화면의 모든 B는 BA로 바뀌고, A는 B로 바뀐다는 사실을 알게되었다.
버튼을 K번 눌렀을 때, 화면에 A와 B의 개수는 몇 개가 될까?
입력
첫째 줄에 K (1 ≤ K ≤ 45)가 주어진다.
출력
첫째 줄에 A의 개수와 B의 개수를 공백으로 구분해 출력한다.
코드
#include <iostream>
using namespace std;
int main()
{
int n =0;
long long A[45];
long long B[45];
A[0]=0; //A, B개수를 1번 눌렀을 때부터 살펴보면 (n-1)+ (n-2)=n번째 눌렀을 때 A, B의 개수가 됨을 알 수 있음
A[1]=1; //A: 0,1 | B: 0,1번째만 지정해두고 2부터 for문으로 찾으면 됨
B[0]=1;
B[1]=1;
cin >> n;
for (int i=2; i<n; i++) {
A[i]=A[i-1]+A[i-2];
B[i] = B[i-1]+B[i-2];
}
cout << A[n-1] << " " << B[n-1];
return 0;
}
상근이는 도대체 누구길래 백준 문제마다 나오는 것일까
'백준' 카테고리의 다른 글
#[C++]1316 - 그룹 단어 체커 (0) | 2024.02.08 |
---|---|
#[C++] 11399 - ATM (0) | 2024.02.02 |
#[C++] 4673 - 셀프넘버 (0) | 2024.02.02 |
#[C++]2217 - 로프 (0) | 2024.01.31 |
#[C++]1789 - 수들의 합 (1) | 2024.01.31 |