백준 큰 수 연산

    [백준, BOJ 27434] 팩토리얼 3 (java)

    https://www.acmicpc.net/problem/27434메모리: 393,188 KB , 시간: 2,960 ms사용 알고리즘: 큰 수 연산, 사칙연산, 수학Java에서는 long 타입으로도 오버 플로우가 발생하기 때문에, 기본 자료형을 사용할 수 없다.때문에 BigInteger라는 것을 사용해야 한다. BigInteger에서 곱셈 연산을 하기 위해서는 BigInteger 객체의 multiply라는 메소드를 사용해야 하고,이 메소드는 파라미터로 곱하고자 하는 수를 나타내는 BigInteger 객체를 받는다. 때문에 $N!$을 계산하기 위해 N번의 BigInteger 객체를 생성하고 곱하는 과정에서 시간초과가 난다.시간초과를 해결하기 위해서는 BigInteger 생성 횟수를 줄여야 하고,분할 정복을..

    [백준, BOJ 10826] 피보나치 수 4 (java)

    https://www.acmicpc.net/problem/10826 10826번: 피보나치 수 4 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 $F_n$ = $F_{n-1}$ + $F_{n-2}$ (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, ..