https://school.programmers.co.kr/learn/courses/30/lessons/12924
<정해코드>
def solution(n):
result = 0
for start in range(1, n+1):
summation = 0
for i in range(start, n+1):
summation += i
if summation == n:
result += 1
break
elif summation > n:
break
return result
브루트포스 문제인데 문제를 이상하게 읽었다. 연속한 자연수라길래 1증분, 2증분… 등을 고려해야하는 줄 알았다.
그리고 range로 summation되는 부분을 확인했어야 하는데 in 만쓰고 range는 안했다.
이 문제에는, 효율성을 체크가 들어가는데 도합이 목표하는 수에서 넘어가거나, 도합이 이뤄지는경우 반복문을 종료해야 온전한 점수를 받는다.
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers / Level2] 짝지어 제거하기 (0) | 2024.01.19 |
---|---|
[Programmers / Level2] 피보나치 수 (0) | 2024.01.18 |
[Programmers / Level2] 이진 변환 반복하기 (0) | 2024.01.16 |
[Programmers / Level2] 올바른 괄호 (2) | 2024.01.15 |
[Programmers / Level2] JadenCase 문자열 만들기 (0) | 2024.01.14 |