728x90
반응형
📌 문제링크
https://school.programmers.co.kr/learn/courses/30/lessons/12924
📌 문제설명
📌 풀이과정
✅ 1번째 시도: 정확성 100 효율성 0
def solution(n):
answer = 0
for i in range(1, n+1):
tmp = 0
for j in range(i, n+1):
tmp += j
if tmp == n:
answer += 1
break
return answer
✅ 2번째 시도: pass
내부 for문에서 tmp == n일 때만 break할 수 있게 해놨었다.
그런데 생각해보니 이미 tmp가 n보다 커진 경우는 더 이상 따져볼 필요가 없는데, 내부 for문이 계속 돌아간다는 걸 알았다. 그래서 if tmp > n: break 를 추가했더니 효율성 테스트까지 통과 완료 !!
def solution(n):
answer = 0
for i in range(1, n+1):
tmp = 0
for j in range(i, n+1):
tmp += j
if tmp > n: break
if tmp == n:
answer += 1
break
return answer
728x90
반응형
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/Python] Lv2. 피보나치 수 (0) | 2024.10.18 |
---|---|
[프로그래머스/Python] 다음 큰 수 (0) | 2024.10.18 |
[프로그래머스/Python] 알고리즘고득점Kit-완전탐색-카펫 (0) | 2024.10.18 |
[프로그래머스/Python] 알고리즘고득점Kit-힙(Heap)-이중우선순위큐 (0) | 2024.10.18 |
[프로그래머스/Python] 알고리즘고득점Kit-스택/큐-주식가격 (5) | 2024.10.18 |