Coding Test 연습
[Baekjoon] 재귀 문제풀이 (피보나치수열 10870번, 팩토리얼 10872번)
LearnerKSH
2021. 7. 5. 19:41
728x90
반응형
문제 10870번 - 피보나치수열
https://www.acmicpc.net/problem/10870
10870번: 피보나치 수 5
피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가
www.acmicpc.net

재귀함수 풀이
import java.util.Scanner;
public class M10870 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long A = sc.nextLong();
System.out.println(factorial(A));
}
public static long factorial(long n) {
if (n == 1) {
return 1;
} else if (n == 0) {
return 0;
}
return factorial(n - 2) + factorial(n - 1);
}
}
문제 10872번 - 팩토리얼
https://www.acmicpc.net/problem/10872
10872번: 팩토리얼
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
www.acmicpc.net

재귀함수 풀이
import java.util.Scanner;
public class M10872 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long A = sc.nextLong();
System.out.println(factorial(A));
}
public static long factorial(long n) {
if (n == 1) {
return n;
} else if (n == 0) {
return 1;
}
return n * factorial(n - 1);
}
}
반응형