문제
https://school.programmers.co.kr/learn/courses/30/lessons/120909
설계
파이썬
def solution(n):
n = n ** (1 / 2) # 루트로 나눔
if n - n // 1 > 0: # 소수점이 있다면
return 2
return 1 # 정수로 떨어진다면 True
자바스크립트
// 제곱수가 되는지는 n의 루트만큼의 숫자 까지만 확인하면 검증할 수 있다.
function solution(n) {
const root = parseInt(Math.sqrt(n));
let answer = 2
for (let i = 1; i <= root; i++) {
if (i * i === n) {
answer = 1
break
}
}
return answer;
}
'PS (Problem Solving) > Programmers' 카테고리의 다른 글
[프로그래머스] 문자열안에 문자열 - 파이썬 (0) | 2023.01.20 |
---|---|
[프로그래머스] 자릿수 더하기 - 파이썬 (0) | 2023.01.20 |
[프로그래머스] 개미 군단 - 파이썬 (0) | 2023.01.20 |
[프로그래머스] 모음 제거 - 파이썬 (0) | 2023.01.20 |
[프로그래머스] 숨어있는 숫자의 덧셈 (1) - 파이썬 (0) | 2023.01.20 |