재귀함수로 팩토리얼(Factorial) 구현하기
https://www.acmicpc.net/problem/10872
for문이 아닌
재귀함수
를 이용하여 팩토리얼(Factorial) 구현하기
Java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int userInput = sc.nextInt();
System.out.print(factorial(userInput));
}
public static int factorial(int N) {
if (N == 0 || N == 1) // 0!이나 1!의 값은 1이니까
return 1;
return N*factorial(N-1); // 재귀함수!
}
}
Python
userN = int(input());
def factorial(N):
if N == 0 or N == 1: # 0!이나 1!의 값은 1이니까
return 1
return N * factorial(N-1) # 재귀함수!
print(factorial(userN))
반응형
'알고리즘 > 백준 알고리즘' 카테고리의 다른 글
BOJ 20953 '고고학자 예린' (0) | 2022.09.18 |
---|---|
BOJ 1074 "Z" (0) | 2022.09.18 |
[백준] 파이썬 2577 (0) | 2020.01.03 |
[백준] 파이썬(python) 2920 (0) | 2019.09.20 |
[백준] 파이썬(python) 10951 (0) | 2019.07.17 |