문제 설명
정수 값 n이 주어졌을 때, 이 값의 제곱근을 출력하는 프로그램을 구현하세요.
단, n의 제곱근이 무리수일 경우 0을 반환합니다.
입력 형식
· n : 정수
출력 형식
· n의 제곱근을 정수로 반환
제약 사항
· 1 <= n <= 1000000
입출력 예시
· 예시1
· 입력
· n = 4
· 출력 : 2
· 설명 : 4의 제곱근은 2이므로, 2를 반환
· 예시2
· 입력
· n = 6
· 출력 : 0
· 설명 : 6의 제곱근은 무리수이므로, 0을 반환
작성 코드
class Solution {
public int solution(int n) {
double result = Math.sqrt(n);
// result 변수의 값이 정수일 경우 해당 값을 반환, 아닐 경우 0을 반환
return (int)(result == (int) result ? result : 0);
}
public static void main(String[] args) {
Solution st = new Solution();
int n = 4;
System.out.println(st.solution(n));
}
}
정답 코드
class Solution {
public int solution(int n) {
int result = 0;
for (int i = 1; i < n + 1; i++) {
if (n < i*i) {
break;
}
if (n == i*i) {
result = i;
break;
}
}
return result;
}
public static void main(String[] args) {
Solution st = new Solution();
int n = 4;
System.out.println(st.solution(n));
}
}
'연습 코딩테스트' 카테고리의 다른 글
연습문제 2-1(1) 가장 둘레가 긴 삼각형의 둘레 (0) | 2023.04.05 |
---|---|
연습문제 1-5(5) 문자열 대/소문자 뒤집기 (0) | 2023.04.04 |
연습문제 1-5(3) 문자열 역으로 출력 (0) | 2023.04.04 |
연습문제 1-5(2) 1과 n으로만 나누어지는 여부(소수) (0) | 2023.04.04 |
연습문제 1-5(1) 가장 많이 등장하는 문자 출력 (0) | 2023.04.04 |