i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 4 3 2 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요.
class Solution {
public int solution(int n) {
int i = 1;
int fac = 1; // 팩토리얼 결과값을 담을 변수
while(fac <= n){ //팩토리얼 값이 주어진 정수 n보다 크면 while문 종료
i++;
fac *= i; // fac = fac * i; 팩토리얼 계산
}
return i - 1; // while문이 팩토리얼 값이 n보다 커야 종료되기 때문에 한번 더 실행돼서 i에서 1을 빼줘야 함
}
}
class Solution {
public int solution(int n) {
int answer = 1;
for(int i=1; i<=10; i++){
answer *= i;
if(answer == n){
answer = i;
break;
}
else if(answer >= n){
answer = i-1;
break;
}
}
return answer;
}
}