반응형

 

 

 

<코드>

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

int N;
vector<int> v;

void fibo(int n)
{
	v.push_back(0);
	v.push_back(1);
	v.push_back(1);

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

	cout << v.back();
}

int main()
{
	cin >> N;
	fibo(N);
}

 

풀이 방법

 

45번째의 피보나치 수는 11억정도 이므로 int 자료형 변수를 사용해도 무방합니다.

 

 

 

www.acmicpc.net/problem/2747

 

2747번: 피보나치 수

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가

www.acmicpc.net

 

반응형

+ Recent posts