728x90
반응형
📕문제 설명
i 팩토리얼(i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 x 4 x 3 x 2 x 1 =120입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 수 i를 return 하도록 solution 함수를 완성해주세요.
📗제한사항
- 0 < n ≤ 3,628,800
📘입출력 예와 설명
n | result | 설명 | ||||||
3628800 | 10 | 10! = 3,628,800입니다. n이 3628800이므로 최대 팩토리얼인 10을 return 합니다. | ||||||
7 | 3 | 3! = 6, 4! = 24입니다. n이 7이므로, 7 이하의 최대 팩토리얼인 3을 return 합니다. |
📙풀이
function solution(n) {
let cnt = 1;
for(let i=1; i<=n; i++){
cnt *= i
if(cnt === n){
return i
}
if(cnt > n){
return i-1
}
}
}
for 반복문을 사용해서 1부터 n까지 숫자를 곱해주면서 팩토리얼의 값을 구하고, 팩토리얼의 값이 n과 같을 때는 i를 반환하고, n보다 클때는 i-1를 반환하는 조건을 추가해서 최대 팩토리얼 값을 구하였습니다!!
728x90
'Javascript' 카테고리의 다른 글
[javascript] 프로그래머스 - 합성수 찾기 (0) | 2023.06.19 |
---|---|
[javascript] 중첩 반복문 - 중첩 for문, 중첩 while문 (feat. 구구단) (2) | 2023.06.19 |
[javascript] 프로그래머스 - 주사위의 개수 (1) | 2023.06.15 |
[javascript] reduce 메소드 사용법(feat. reduceRight) (0) | 2023.06.14 |
[javascript]반복문(for, while)과 배열 메소드(forEach,map) 전격비교! (0) | 2023.06.12 |