반응형
🔺 문제
24416번: 알고리즘 수업 - 피보나치 수 1
오늘도 서준이는 동적 프로그래밍 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 오늘은 n의 피보나치 수를 재귀호출과 동적 프로그래밍
www.acmicpc.net
🔺 코드
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
32
33
34
35
36
37
38
39
|
import java.util.*;
import java.io.*;
public class Main {
static int n;
static int cnt, dpCnt = 0;
static int[] f;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
n = Integer.parseInt(br.readLine());
f = new int[n+1];
fib(n);
fibonacci(n);
System.out.println(cnt + " " + dpCnt);
}
// 재귀
static int fib(int num) {
if(num == 1 || num == 2) {
cnt++;
return 1;
}
return fib(num - 1) + fib(num - 2);
}
// DP
static int fibonacci(int num) {
f[1] = f[2] = 1;
for(int i = 3 ; i <= num ; i++) {
f[i] = f[i - 1] + f[i - 2];
dpCnt++;
}
return f[num];
}
}
|
cs |
✅ 해결 아이디어
✔ 문제에 나온 의사코드 그대로... ( 재귀 & DP)
💬 느낀 점
DP 단계별로 첨부터 다시 밟아보려고 한다...
1회독 | 2회독 | 3회독 | 4회독 | 5회독 |
V |
(참고)
[백준] 24416 / 알고리즘 수업 - 피보나치 수 1
오늘도 서준이는 동적 프로그래밍 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자.오늘은 n의 피보나치 수를 재귀호출과 동적 프로그래밍으로
velog.io
반응형
'코테 > 백준' 카테고리의 다른 글
[백준/JAVA] 1904번: 01타일 (1) | 2023.05.30 |
---|---|
[백준/JAVA] 9184번: 신나는 함수 실행 (1) | 2023.05.30 |
[백준/JAVA] 1495번: 기타리스트 (0) | 2023.05.30 |
[백준/JAVA] 15989번: 1, 2, 3 더하기 4 (0) | 2023.05.29 |
[백준/JAVA] 15988번: 1, 2, 3 더하기 3 (0) | 2023.05.29 |