코딩 테스트/프로그래머스
[프로그래머스] (Swift) 정수 제곱근 판별 - Lv.1
Dev.Andy
2023. 4. 3. 21:48
📌 문제
코딩테스트 연습 - 정수 제곱근 판별 | 프로그래머스 스쿨
📌 풀이
Swift의 squareRoot() 메서드와 삼항 연산자를 이용해 풀어 보았다.
squareRoot() | Apple Developer Documentation
- 다만, squareRoot()는 Double에 있는 공식 문서여서 형 변환에 유의해야 한다.
- 문제의 함수의 반환값 또한 Int가 아닌 Int64이니 그에 맞게 형 변환을 하자
📌 코드
func solution(_ n:Int64) -> Int64 {
// n의 제곱근을 상수로 할당
let root = Int64(Double(n).squareRoot())
// 제곱근이 실제로 맞으면 원하는 조건의 반환값을, 아니면 -1을 반환
return root * root == n ? (root + 1) * (root + 1) : -1
}