슬기로운 코테 생활
[프로그래머스] 정수 제곱근 판별
vhrehfdl
2020. 12. 15. 16:29
* 문제
programmers.co.kr/learn/courses/30/lessons/12934
코딩테스트 연습 - 정수 제곱근 판별
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함
programmers.co.kr
* 문제 풀이
- 첫째 n을 루트로 나눈다.
- 둘째, 나눈 값을 제곱해 원래 값과 같은지 체큰한다.
- 셋째, 같다면 제곱 값이고 같지 않다면 -1로 체크해 출력한다.
* 생각
- 이전에 0.5를 제곱해 루트를 적용하는 방법이 생각났었다.
- 역시 꾸준히 많이 풀어야 한다.
* 코드
def solution(n):
sqrt = int(n**0.5)
answer = 0
if sqrt * sqrt == n:
sqrt += 1
answer = sqrt*sqrt
else:
answer = -1
return answer