Notice
250x250
Recent Posts
Recent Comments
Link
넘치게 채우기
[LeetCode] 509. Fibonacci Number 본문
728x90
반응형
문제 유형 : 다이나믹 프로그래밍
난이도 : Easy
문제
The Fibonacci numbers, commonly denoted F(n) form a sequence, called the Fibonacci sequence, such that each number is the sum of the two preceding ones, starting from 0 and 1. That is,
F(0) = 0, F(1) = 1
F(n) = F(n - 1) + F(n - 2), for n > 1.
Given n, calculate F(n).
다이나믹 프로그래밍의 기본 피보나치 수열 문제이다.
입력
Fib(n)에 들어갈 n(0 <= n <= 30)이 주어진다.
출력
fib(n)의 값을 리턴한다.
아이디어
간단한 피보나치 수열이므로, 캐싱을 구현하여 풀어준면 된다.
class Solution {
int cache[31];
public:
Soultion(){
memset(cache, -1, sizeof(cache);
}
int fib(int n) {
if(n == 0){
return 0;
}
if(n == 1){
return 1;
}
if(cache[n] != -1){
return cache[n];
}
cache[n] = fib(n-2) + fib(n-1);
return cache[n];
}
};
728x90
반응형
'PS > LeetCode' 카테고리의 다른 글
[LeetCode] 1491. Average Salary Excluding the Minimum and Maximum Salary (0) | 2023.05.01 |
---|---|
[LeetCode] 1137. N-th Tribonacci Number (0) | 2023.04.30 |
[LeetCode] 7. Reverse Integer (0) | 2023.04.30 |
[Leetcode] 134. Gas Station (0) | 2023.04.29 |
[LeetCode] 258. Add Digits (0) | 2023.04.27 |