문제링크 : https://www.acmicpc.net/problem/2193
#include <bits/stdc++.h>
using namespace std;
int n;
long long dp[91]; //크기가 커서 long long으로 선언
int main()
{
cin >> n;
dp[1] = 1, dp[2] = 1;
for (int i = 3; i <= n; i++)
{
dp[i] = dp[i - 1] + dp[i - 2]; //피보나치 수열과 동일
}
cout << dp[n];
}
경우의 수를 나열하다보면 피보나치 수열과 같은 규칙을 따른다는 것을 알 수 있다.
'백준 > 실버' 카테고리의 다른 글
[백준 7562번] 나이트의 이동 (C++) (0) | 2023.02.06 |
---|---|
[백준 11060번] 점프 점프 (C++) (0) | 2023.02.06 |
[백준 14501번] 퇴사 (C++) (0) | 2023.02.06 |
[백준 11048번] 이동하기 (C++) (0) | 2023.02.06 |
[백준 11722번] 가장 긴 감소하는 부분 수열 (C++) (0) | 2023.02.06 |