알고리즘

[C++] 백준 2748번 피보나치 수 2

J3SUNG 2019. 8. 5. 02:25
728x90

다이나믹 프로그래밍 문제입니다.

DP[i] = DP[i - 1] + DP[i - 2]의 점화식을 세울 수 있습니다.

 

#include <iostream>
#include <cstring>
#include <algorithm>
#include <string>
using namespace std;

long long int DP[100];

int main(int argc, char *argv[])
{	
	int n; 

	memset(DP, 0, sizeof(DP));

	cin >> n;

	DP[1] = 1;

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

	cout << DP[n] << endl;

	return 0;
}