프로그래머스 LV.0 모음
제곱수 판별하기
문제 설명
어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 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 합니다.
제출
import Foundation
func solution(_ n:Int) -> Int {
return sqrt(Double(n)).truncatingRemainder(dividingBy: 1.0) == 0 ? 1 : 2
}
sqrt 함수를 사용해 입력받은 정수의 제곱근을 구한 후, truncatingRemainder 함수를 사용해 제곱근의 소수점 아래가 0이라면 제곱수이기 때문에 1을, 아니라면 2를 반환한다.
반응형
'📖 Coding Test > Programmers LV.0' 카테고리의 다른 글
[프로그래머스 LV.0] 문자열 정렬하기 (2) (0) | 2023.01.19 |
---|---|
[프로그래머스 LV.0] 세균 증식 (0) | 2023.01.18 |
[프로그래머스 LV.0] 문자열안에 문자열 (0) | 2023.01.16 |
[프로그래머스 LV.0] OX퀴즈 (0) | 2023.01.16 |
[프로그래머스 LV.0] 자릿수 더하기 (0) | 2023.01.14 |
댓글