Notice
Recent Posts
Recent Comments
Link
«   2026/05   »
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
Tags
more
Archives
Today
Total
관리 메뉴

개발자도전

[프로그래머스] 팩토리얼 본문

프로그래머스 코딩 테스트

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

도do 2023. 3. 17. 15:16
728x90

[문제]

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 합니다.

 

[답]

fac이라는 재귀함수를 만들어서  문제를 풀어보았다.

그러나 제한사항이 없었다면 이 코드로는 문제를 풀 수 없다는 생각을 하게 되었다.

다른 사람들의 풀이를 보다 while문을 사용한 코드를 보게 되었고 while문을 사용한 풀이를 적어보았다.

 

코드도 이 전보다 짧아지고 제한사항이 없어도 풀 수 있었다.

728x90
Comments