PS/그리디 알고리즘[Greedy]

백준 9009 피보나치

SeungbeomKim 2022. 6. 29. 20:55

https://www.acmicpc.net/problem/9009

 

9009번: 피보나치

입력 데이터는 표준입력을 사용한다. 입력은 T 개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 테스트 데이터의 수를 나타내는 정수 T 가 주어진다. 각 테스트 데이터에는 하나의 정수 n

www.acmicpc.net

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

int main()
{
	int t;
	int dp[46];
	dp[0]=0;
	dp[1]=1;
	for(int i=2;i<46;i++){
		dp[i]=dp[i-1]+dp[i-2];
	}
	vector<int>v;
	cin>>t;
	for(int i=0;i<t;i++)
	{
		int n;
		cin>>n;
		for(int j=45; j>=1; j--){
        		if(dp[j]<=n){
            	n-=dp[j];
            	v.push_back(dp[j]);
            }
        }
        sort(v.begin(),v.end());
		for(int i=0;i<v.size();i++)
		{
			cout<<v[i]<<' ';
		}
		cout<<'\n';
		v.clear();
	}
	
}

'PS > 그리디 알고리즘[Greedy]' 카테고리의 다른 글

백준 19941 햄버거 분배  (0) 2022.07.03
백준 1449 수리공 항승  (0) 2022.07.01
백준 18310 안테나  (0) 2022.06.30
백준 2812 크게 만들기  (0) 2022.06.30
백준 2012 등수매기기  (0) 2022.06.30