Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- TLS
- workflow
- 3-Way HandShake
- nginx
- 성능 개선
- 자동화
- tcp
- SSH
- certbot
- 브라우저
- 인증서
- pm2
- 리버스 프록시
- DNS
- 이미지 최적화
- 이미지 압축
- aws
- 로드 밸런싱
- nextJS
- 렌더링 과정
- 무중단
- 검색엔진최적화
- 배포
- gitgub actions
- CI
- https
- 이미지 포맷 변경
- ec2
- webp
- SSL
Archives
- Today
- Total
개발일기
[JavaScript] 팩토리얼 본문
문제 설명
i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 * 4 * 3 * 2 * 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요.
i! ≤ n
제한사항
- 0 < n ≤ 3,628,800
입출력 예
n | result |
3628800 | 10 |
7 | 3 |
풀이
function solution(n) {
let factorial = 1 ;
let num = 0 ;
while(factorial <= n){
num += 1;
factorial *= num ;
}
return num - 1
}
풀이 설명
1. factorial 과 num 이라는 변수를 만든다. factorial은 n의 값과 비교될 변수이고, num은 결과값으로 쓰일 변수이다.
2. while문을 사용해서 factorial이 n보다 커진다면 while문을 종료한다.
3. while문 안에서 반복할 때마다 num에 + 1을 해주고, factorial 값에 num의 값을 계속해서 곱해준다.
4. n의 값보다 커진다면 num의 값을 리턴해주는데 커지기 전의 값을 리턴해야 하기 때문에 -1을 해준다.
'Algorithm' 카테고리의 다른 글
[JavaScript] 한 번만 등장한 문자 (0) | 2024.07.09 |
---|---|
[JavaScript] 가까운 수 (0) | 2024.07.09 |
[JavaScript]모스부호(1) (0) | 2024.07.05 |
[JavaScript]진료순서 정하기 (0) | 2024.07.05 |
[JavaScript]2차원으로 만들기 (0) | 2024.07.03 |