
내가 작성한 코드
class Solution {
public int solution(int n) {
int i = 1;
long fact = 1; // 팩토리얼 계산을 위한 변수 (long 타입을 사용하는 이유: 팩토리얼 값이 매우 커질 수 있기 때문)
while (true) {
fact *= i; // i! 값 계산
if (fact > n) { // fact가 n을 넘기면 i-1 반환
return i - 1;
}
if (fact == n) { // 같으면 i 반환
return i;
}
i++; // i 값을 증가시킴
}
}
}
다른 사람의 코드
class Solution {
public int solution(int n) {
int fac = 1;
int i = 0;
while(true){
if(fac <= n){
fac *= i + 1;
i++;
}else break;
}
return i-1;
}
}
Share article