[백준 / Node.js] 10872번: 팩토리얼

FE.1·2022년 6월 3일
0

0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다.

출력

첫째 줄에 N!을 출력한다.

예제 입력1

10

예제 출력1

3628800

예제 입력2

0

예제 출력2

1

팩토리얼 주의 - 0! = 1

해당 문제는 1초의 시간제한으로 인해 반복문으로 작성 시 시간초과 발생!

const fs = require("fs");
const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt";
let input = fs.readFileSync(filePath).toString().split("\n");
let num = +input[0];

function factorial(num) {
  if (num <= 1) return 1;
  return num * factorial(num - 1);
}
console.log(factorial(num));
profile
공부하자!

0개의 댓글