[프로그래머스/Python] 숫자의 표현

Sujin Lee·2022년 9월 27일
0

코딩테스트

목록 보기
117/172
post-thumbnail

문제

프로그래머스 - 숫자의 표현

해결 과정

  • 빠르게 풀고 싶은 마음에 그냥 막 써내려가니 효율성이 빵점이었다.
  • 간단하게 생각하자 간단하게!!
  • 1부터 1개씩 더하다가 n이랑 같으면 break 아니면 n보다 커지면 break
    • ex) 1, 1+2 ,..., 1+2+3+4+5, 2, 2+3

시행착오

  • 정확성 100점 효율성 0점 ➡️ 굳이 리스트로 만든 것, sum이 문제
def solution(n):
    answer = 0
    array = list(range(1,n+1))
    
    for i in range(n+1):
        for j in range(n+1):
            if sum(array[i:j]) == n:
                answer += 1
    return answer

풀이

def solution(n):
    answer = 0
    for i in range(1,n+1):
        total = 0
        for j in range(i, n+1):
            total += j
            if total == n:
                answer += 1
                break
            elif total > n:
                break
            
    return answer
profile
공부한 내용을 기록하는 공간입니다. 📝

0개의 댓글