피보나치 수-Lv2

108번뇌·2021년 1월 3일

#include <string>
#include <vector>

using namespace std;
int Temp[1000001];

int dp(int n)
{
    if(n == 0)      return 0;//이부분 해줘야 반복탈출
    if(n == 1)      return 1;//이부분 해줘야 반복탈출
          
    if(Temp[n] != 0)     return Temp[n];//결과값 있으면 바로 반환 
    else
    {
        Temp[n] = (dp(n-1)+dp(n-2))%1234567;//결과값 없으면 배열에 피보나치 결과값 넣는다.
        return Temp[n];
    }
}

int solution(int n) {
    int answer = 0;
    
    answer = dp(n) ;
    
    return answer;
}

DP이용했음.

profile
내일 아침 눈을 떳을 때, '기대되는 오늘 하루를 만들기 위해' 나는 오늘도 생각하고 고민한다.

0개의 댓글