반응형
https://www.acmicpc.net/problem/15624
- 문제
- 문제 풀이
백준 15624번 피보나치 수 7은 피보나치와 나머지를 이용해서 푸는 문제이다.
즉 n이 커지면 피보나치 수가 너무 커지니까 나머지로 구해서 수를 int 범위를 벗어나지 않게 하는 것이다.
fib(n) = (fib(n-1) + fib(n-2)) % 1000000007;
이 코드가 기본 코드가 되겠다.
- 코드
import java.io.*;
import java.util.*;
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());
long[] dp = new long[1000001];
dp[1] = 1;
for (int i = 2; i <= n; i++) {
dp[i] = (dp[i-1] + dp[i-2]) % 1000000007;
}
System.out.print(dp[n]);
}
}
- 후기
되게 간단한 실버 3의 문제였다. 앞으로는 골드 문제들도 도전해보고 다음 주부터는 그래프를 다시 심도 있게 공부해 볼 예정이다.
반응형
'백준' 카테고리의 다른 글
[백준] 2670번 : 연속부분최대곱 – JAVA [자바] (0) | 2022.04.06 |
---|---|
[백준] 10211번 : Maximum Subarray – JAVA [자바] (0) | 2022.04.03 |
[백준] 7861번 : Longest Ordered Subsequence – JAVA [자바] (0) | 2022.04.01 |
[백준] 17216번 : 가장 큰 감소 부분 수열 – JAVA [자바] (0) | 2022.03.31 |
[백준] 11053번 : 가장 긴 증가하는 부분 수열 – JAVA [자바] (0) | 2022.03.31 |
댓글