포스트

137. 제곱수 판별하기


1
2
3
4
5
6
7
8
9
10
11
import Foundation

func solution(_ n:Int) -> Int {
    
    var answer : Int = 0
    
    answer = Int(sqrt(Double(n))) * Int(sqrt(Double(n))) == n ? 1 : 2
    
    
    return answer
}

일단 제곱수를 판별하기위해서 sqrt라는 메서드를 이용했다.

sqrt는 n라는 수에 루트를 씌운 값을 나타내며 Double Type을 return한다.

그래서 sqrt안에는 double을 씌운 값이 들어가야한다.

밖에 다시 Int를 씌운건 위에 적었듯이 소수점의 값을 리턴하는데, 여기서 필요한건 정수부의 값이라 Int로 리턴하였다.

그래서 해당수를 다시 곱했을때 원래의 n값이 나오면 되므로 삼항연산자를 사용하여 결과값을 리턴하였다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.