처음에 dp의 타입을 int 배열로 설정해서 실패했었다.
비록 입력값으로 주는 n의 값이 90 이하라고는 하지만 피보나치 수는 기하급수적으로 늘어나기 때문에 타입을 long으로 바꿔줬다.
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine()); // n번째 피보나치 수
long[] dp = new long[n + 1];
dp[0] = 0;
dp[1] = 1;
for (int i = 2; i <= n; i++) {
dp[i] = dp[i - 1] + dp[i - 2];
}
System.out.println(dp[n]);
}
}
'Playground > 자바문제집' 카테고리의 다른 글
[백준] 1260번 (0) | 2023.05.15 |
---|---|
[백준] 1463번 (0) | 2023.05.14 |
[백준] 2720번 (0) | 2023.05.14 |
[프로그래머스] 올바른 괄호 (0) | 2023.05.13 |
[프로그래머스] 완주하지 못한 선수 (0) | 2023.05.13 |