Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- kotlin
- LEVEL2
- 프로젝트
- BFS
- 네트워크
- Java8
- algorithm
- Spring
- 백준
- back-end
- 자료구조
- backtracking
- programmers
- 스프링
- DP
- lambda
- 모던자바
- TDD
- 백트래킹
- OS
- 자바
- 코틀린
- Brute-force
- java
- 그래프
- baekjoon
- 알고리즘
- DFS
- 운영체제
- 프로그래머스
Archives
- Today
- Total
요깨비's LAB
[프로그래머스, JAVA] 피보나치 수 본문
재귀를 이용하여 Top-Down이 아닌 Bottom-Up 방식으로 문제를 풀었습니다. 그 이유는, Top-Down으로 풀었을 경우에는 풀었던 문제를 다시 풀어야 하는 비효율이 존재하기 때문에 효율을 생각해서 Bottom-Up 방식으로 풀었습니다. Bottom-Up으로 바꾸니까 이 문제에 한해서 DP가 되버린 것 같기도 하네요
class Solution {
int[] dp;
public int solution(int n) {
int answer = 0;
dp = new int[n+1];
dp[0] = 0;
dp[1] = 1;
if(n == 1) {
answer = 1;
}else {
pibo(2,dp[0],dp[1],n);
}
answer = dp[n];
return answer;
}
public void pibo(int k,int dp1,int dp2,int num) {
dp[k] = (dp1 + dp2) % 1234567;
if(k == num) {
return;
}
pibo(k+1,dp2,dp[k],num);
}
}
'알고리즘(Java) > 프로그래머스' 카테고리의 다른 글
[프로그래머스, JAVA] 단체사진 찍기 (0) | 2021.06.05 |
---|---|
[프로그래머스, JAVA] 저울 (0) | 2020.02.12 |
[프로그래머스, JAVA] 땅따먹기 (0) | 2019.12.16 |
[프로그래머스, JAVA] 올바른 괄호 (0) | 2019.12.13 |
[프로그래머스, JAVA] 다음 큰 숫자 (0) | 2019.12.13 |
Comments