티스토리 뷰

코딩테스트 연습 - 팩토리얼

문제 설명


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

입출력 예 설명


입출력 예 #1

  • 10! = 3,628,800입니다. n이 3628800이므로 최대 팩토리얼인 10을 return 합니다.

입출력 예 #2

  • 3! = 6, 4! = 24입니다. n이 7이므로, 7 이하의 최대 팩토리얼인 3을 return 합니다.

제출 코드


2022년 12월 17일

#include <string>
#include <vector>

using namespace std;

int solution(int n) {
    int answer = 0;
    int temp = 1;
    
    for(int i = 1; i <= 10; i++)
    {
        temp *= i;
        if(temp <= n) answer = i;
    }
    
    return answer;
}

문제에서 최대값을 선정해주었기에 반복문을 돌 때 10 이하로 둘 수 있었다.

'😈 알고리즘 > 🖥️ 프로그래머스' 카테고리의 다른 글

🖥️ 잘라서 배열로 저장하기  (0) 2023.01.24
🖥️ A로 B 만들기  (0) 2023.01.23
🖥️ 모스부호 (1)  (0) 2023.01.21
🖥️ 중복된 문자 제거  (1) 2023.01.20
🖥️ 369게임  (0) 2023.01.19
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
«   2025/07   »
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 31
링크
Total
Today
Yesterday