728x90
반응형
처음에는, 작은 수만 예외로 처리하고, 범위를 주어진 수의 절반까지의 범위로 했었는데, 이게 잘못된 접근이었다. 주어진 문제의 숫자의 범위가, 1,000,000이었기 때문에 자칫하면 루프가 50만번 돌 수도 있었다.
근데, 매개변수의 제한조건이 백만이니까, 최대 제곱수가 1000일거라는 생각이 들어 루프의 범위를 줄이고 다시 돌려봤더니 금새 문제가 풀렸다.
내가 맞힌 정답::
def solution(n):
answer = 0
for i in range(1,1001):
if n == i*i:
answer = 1
break
else:
answer = 2
return answer
잘못 작성한 답 (1, 2)
def root(n):
rootN = int(n/2)
for i in range(2,rootN):
if n//rootN == rootN:
return rootN
else :
return False
def solution(n):
answer = 0
print(root(8))
print(root(9))
if root(n):
answer = 1
else:
answer = 2
return answer
728x90
반응형
'Job Wanted > 코테 - 프로그래머스' 카테고리의 다른 글
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 공 던지기 (0) | 2022.12.15 |
---|---|
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 암호 해독 (0) | 2022.12.15 |
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 피자 나눠 먹기 (3) (0) | 2022.12.15 |
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 최댓값 만들기 (2) (0) | 2022.12.08 |
[프로그래머스] 코딩테스트 연습 > 코딩테스트 입문 > 양꼬치 (0) | 2022.12.08 |