MODE::CREATIVE

[백준][c++] 2193번: 이친수 본문

BOJ

[백준][c++] 2193번: 이친수

LEE MINGYU 2024. 9. 22. 15:53

2193번: 이친수 (acmicpc.net)

문제 해석

  • dp를 이용한 경우의 수 찾기

알고리즘 분류

  • dp

풀이

  • arr[i][1] = arr[i - 1][0];
    arr[i][0] = arr[i - 1][0] + arr[i - 1][1];
  • 점화식을 이용하여 배열을 채운다

코드

#include <iostream>
#include <string>
#include <vector>
using namespace std;

int n;
vector<vector<long>> arr;

int main() { 
  cin >> n;
  arr.resize(n + 1, vector<long>(2));
  arr[1][0] = 0;
  arr[1][1] = 1;

  for (int i = 2; i <= n; i++) {
    arr[i][1] = arr[i - 1][0];
    arr[i][0] = arr[i - 1][0] + arr[i - 1][1];
  }
  cout << arr[n][1] + arr[n][0]; 
}

'BOJ' 카테고리의 다른 글

[백준][c++] 1966번: 프린터 큐  (0) 2024.10.02
[백준][c++] 2108번: 통계학  (2) 2024.10.01
[백준][c++] 2579번: 계단 오르기  (0) 2024.09.22
[백준][c++] 2606번: 바이러스  (2) 2024.09.22
[백준][c++] 9095번: 1, 2, 3 더하기  (0) 2024.09.17