https://programmers.co.kr/learn/courses/30/lessons/12934
자바스크립트
function solution(n) {
if(Math.sqrt(n)%1){
return -1
}
else{
return Math.pow(Math.sqrt(n)+1,2)
}
}
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.이기 때문에 제곱근이 소수점이 나오면 안되는 것을 이용해서 %1을 계산했을시 나머지가 0이 아닌(truthy)값일 때(소수점일 때) -1를 리턴하도록 했고, 다른 경우(즉, 어떤 양의정수 x의 제곱일 때)는 제곱근+1의 제곱을 리턴하게 했다.
시간을 모르겠당
더보기
테스트 1 〉 | 통과 (0.05ms, 30MB) |
테스트 2 〉 | 통과 (0.03ms, 30MB) |
테스트 3 〉 | 통과 (0.03ms, 30.2MB) |
테스트 4 〉 | 통과 (0.10ms, 30.1MB) |
테스트 5 〉 | 통과 (0.04ms, 30.2MB) |
테스트 6 〉 | 통과 (0.06ms, 30.1MB) |
테스트 7 〉 | 통과 (0.05ms, 30.1MB) |
테스트 8 〉 | 통과 (0.04ms, 30MB) |
테스트 9 〉 | 통과 (0.03ms, 29.9MB) |
테스트 10 〉 | 통과 (0.03ms, 30.1MB) |
테스트 11 〉 | 통과 (0.06ms, 30MB) |
테스트 12 〉 | 통과 (0.06ms, 30.1MB) |
테스트 13 〉 | 통과 (0.05ms, 30MB) |
테스트 14 〉 | 통과 (0.04ms, 30MB) |
테스트 15 〉 | 통과 (0.04ms, 30MB) |
테스트 16 〉 | 통과 (0.05ms, 30.2MB) |
테스트 17 〉 | 통과 (0.04ms, 30MB) |
테스트 18 〉 | 통과 (0.04ms, 30.1MB) |
파이썬
def solution(n):
if int(n**0.5)**2 !=n:
return -1
else:
return int((n**0.5+1)**2)
비슷한 방법이다..ㅎ.. 파이썬은 확 떠오르는게 없어서.. 소숫점있는 값을 int로 변환됐을 때를 이용해 원래의 값과 비교시켰다
더보기
테스트 1 〉 | 통과 (0.01ms, 10.2MB) |
테스트 2 〉 | 통과 (0.02ms, 10.1MB) |
테스트 3 〉 | 통과 (0.01ms, 10.3MB) |
테스트 4 〉 | 통과 (0.02ms, 10.3MB) |
테스트 5 〉 | 통과 (0.01ms, 10.3MB) |
테스트 6 〉 | 통과 (0.01ms, 10.3MB) |
테스트 7 〉 | 통과 (0.01ms, 10.1MB) |
테스트 8 〉 | 통과 (0.02ms, 10MB) |
테스트 9 〉 | 통과 (0.02ms, 10.2MB) |
테스트 10 〉 | 통과 (0.01ms, 10.1MB) |
테스트 11 〉 | 통과 (0.02ms, 10.3MB) |
테스트 12 〉 | 통과 (0.02ms, 9.95MB) |
테스트 13 〉 | 통과 (0.01ms, 10.1MB) |
테스트 14 〉 | 통과 (0.02ms, 10.4MB) |
테스트 15 〉 | 통과 (0.02ms, 10.2MB) |
테스트 16 〉 | 통과 (0.01ms, 10.2MB) |
테스트 17 〉 | 통과 (0.02ms, 10.3MB) |
테스트 18 〉 | 통과 (0.02ms, 10.2MB) |
'알고리즘 > 프로그래머스 문제-JS' 카테고리의 다른 글
[JS]두 정수 사이의 합 (0) | 2022.05.31 |
---|---|
[JS]정수 내림차순으로 배치하기 (0) | 2022.05.23 |
[JS&Python]자연수 뒤집어 배열로 만들기 (0) | 2022.04.26 |
[JS&Python] 빈 배열인지 확인하기 (0) | 2022.04.20 |
[javascript]핸드폰 번호 가리기 (0) | 2022.04.20 |