-정수 제곱근 판별
1. 제곱근, 거듭제곱
import java.util.Math;
sqrt(n); : n의 제곱근
pow(n,m); : n의 3 거듭제곱
or
바로
Math.sqrt(n);
Math.pow(n,m);
2. 처음 실패 소스
class Solution {
public long solution(long n) {
long answer = -1;
int i;
for(i=1;i<=n;i++){
if(n/i==i){
answer = (i+1)*(i+1);
break;
}
}
return answer;
}
}
3. 두 번째 실패 소스
class Solution {
public long solution(long n) {
long answer = -1;
int i;
for(i=1;i<=Math.sqrt(n);i++){
if(n/i==i){
answer = (i+1)*(i+1);
break;
}
}
return answer;
}
}
4. 13번 테스트만 실패 소스
class Solution {
public long solution(long n) {
long answer = -1;
int i;
for(i=1;i<=n;i++){
if(n/i==i){
answer = (long)((Math.sqrt(n) +1) * (Math.sqrt(n)+1));
break;
}
}
return answer;
}
}
5. 통과 소스
class Solution {
public long solution(long n) {
long answer = -1;
int i;
for(i=1;i<=n;i++){
if(Math.sqrt(n)==i){
answer = (long)((Math.sqrt(n) +1) * (Math.sqrt(n)+1));
// 조금 더 간단한 소스
// answer = (long)(Math.pow(i+1,2)) ;
break;
}
}
return answer;
}
}
6. if( n/i == i ) 와 if( Math.sqrt(n) == i ) 가 다른 점?
: 알아보기
'개발 > JAVA' 카테고리의 다른 글
[JAVA] level1. 같은 숫자는 싫어 (0) | 2019.11.20 |
---|---|
[JAVA] level1. 나누어 떨어지는 숫자 배열 / Arrays.sort() (0) | 2019.02.08 |
[JAVA] level1 . 핸드폰 번호 가리기 / substring(), String ""+"" (0) | 2019.01.23 |
[JAVA] level1 . 약수의 합 (0) | 2019.01.23 |
[JAVA] level1 . 짝수와 홀수 (0) | 2019.01.23 |