[프로그래머스] 팩토리얼 - JAVA

2023. 4. 9. 19:56프로그래머스 - JAVA

문제

i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 * 4 * 3 * 2 * 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요.


조건

제한사항
0 < n ≤ 3,628,800


코드

class Solution {
    // 팩토리얼 재귀함수
    public static int fun(int n){
        if (n <= 1)
			return n;           
		else 
            return fun(n-1)*n;
    }
    
    
    public int solution(int n) {
    	int answer = 0;
        for(int i = 1;i<12;i++){
            if(fun(i) > n){
                answer = i-1;
                break;
            }      
        }
        return answer;
    }
}

 

 

 

 

 

 

출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges