-
[백준 DP] 01타일 C++Computer Science/백준 Boj 2023. 10. 23. 21:10
https://www.acmicpc.net/problem/1904
풀이
DP[1] = 1 1 DP[2] = 2 00, 11 DP[3] = 3 001, 100, 111 DP[4] = 5 0011, 1001, 1100, 1111 DP[5] = 8 00000, 00001, 00100, 10000, 00111, 10011, 11001, 11100 5까지의 경우의 수를 구하고 규칙성을 찾았다. 피보나치 수열을 따른다는 것을 알았다.
#include <iostream> using namespace std; long long DP[1'000'001]; int main() { int N = 0; cin >> N; DP[1] = 1; DP[2] = 2; DP[3] = 3; for(int i = 4; i <= N; ++i) { DP[i] = (DP[i - 1] + DP[i - 2]) % 15746; } cout << DP[N] << endl; return 0; }
'Computer Science > 백준 Boj' 카테고리의 다른 글
[백준 조합] 녹색거탑 C++ (0) 2023.10.23 [백준 조합] 베라의 패션 C++ (0) 2023.10.23 [백준 조합] 다리놓기 1010 C++ (0) 2023.10.23 [백준 조합] 1010 C++ (0) 2023.10.23 [백준, 큐 스택] 풍선 터뜨리기 2346 C++ (0) 2023.10.21