728x90
반응형
문제 설명
어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.
제한사항
1 ≤ n ≤ 1,000,000
입출력 예
n result
144 1
976 2
입출력 예 설명
입출력 예 #1
144는 12의 제곱이므로 제곱수입니다. 따라서 1을 return합니다.
입출력 예 #2
976은 제곱수가 아닙니다. 따라서 2를 return합니다.
내 풀이
Java
import java.util.*;
class Solution {
public int solution(int n) {
int answer = 0;
answer = Math.sqrt(n) % 1 == 0 ? 1 : 2;
return answer;
}
}
C
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int solution(int n) {
int answer = 2;
for(int i = 1; i <= n; i++){
if(i * i == n){
return 1;
}
}
return answer;
}
Python
import math
def solution(n):
answer = 0
if math.sqrt(n) % 1 == 0:
answer = 1
else:
answer = 2
return answer
https://school.programmers.co.kr/learn/courses/30/lessons/120909
728x90
반응형
'코딩테스트 > 프로그래머스 입문' 카테고리의 다른 글
[코딩테스트 Lv.0] 세균 증식 (0) | 2024.04.19 |
---|---|
[코딩테스트 Lv.0] 두 수의 합 (0) | 2024.04.18 |
[코딩테스트 Lv.0] 문자열안에 문자열 (0) | 2024.04.17 |
[코딩테스트 Lv.0] OX퀴즈 (0) | 2024.04.16 |
[코딩테스트 Lv.0] 자릿수 더하기 (0) | 2024.04.11 |