프로그래머스 연습문제 - 숫자의표현 (level2)

j_wisdom_h·2022년 11월 18일
0

CodingTest

목록 보기
11/58
post-thumbnail

프로그래머스 연습문제 - 숫자의표현 (level2)

문제설명


제한사항 & 입출력 예

My Solution - 75점 (효율성 0점)

def solution(n):
    half = n//2  if n%2 == 0 else n//2 +1
    count = 0
    for i in range(1,half):
        s = 0
        for j in range(i,half+1):
            s +=j
            if s ==n: 
                count+=1
                break 
            elif s > n:
                break
    return count+1 

이번주 최초로 혼자 풀어서 100점을 맞을 수 없었던 문제!
(추가) 사실 이 코드는 100점이 나오는 풀이방법이였다. 정답중에 나랑 거의 똑같은 코드가 있어서 어랏? 하면서 위의 코드를 그대로 복붙했는데 100점이 나왔다.
나는 그동안 무엇을 한 거지?? 황당하면서도 내가 그래도 잘 풀었구나 싶은 안도가 든다.


구글링을 통해 다른 방법을 찾아보았다.



출처 : https://velog.io/@younge/Python-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EC%88%AB%EC%9E%90%EC%9D%98-%ED%91%9C%ED%98%84-%EC%97%B0%EC%8A%B5%EB%AC%B8%EC%A0%9CLevel-2

공부한 내용

삼항연산자

[condition] ? [true_value] : [false_value] 

파이썬에서 위 형태를 지원하지 않고 아래 형태를 지원한다.

[true_value] if [condition] else [false_value] 

break

2중포문에서 break는 하나의 for문에서 빠져나온다.

profile
뚜잇뚜잇 FE개발자

0개의 댓글