[프로그래머스/파이썬] 팩토리얼

SMALL

[문제]

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

 

[답안]

from math import factorial

def solution(n):
    answer = 0
    while(n >= factorial(answer)):
        answer +=1
    return answer - 1

 

[풀이]

math 라이브러리의 factorial 함수를 사용하였다.

정수 n으로 구할 수 있는 가장 큰 팩토리얼 값을 구하기 위해서 

0! 부터 while 문을 돌면서 n과 비교하였다.

 

factorial(answer) 값이 n보다 작을 경우에 +1 을 해주고 

마지막 n 보다 작거나 같은 값에서 +1 을 해주었기 때문에 값에는 -1 을 해주었다.

 

[문제 풀어보기]

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

LIST