[Python]알고리즘/코드업

[기초-종합] ▲ 6079 - 언제까지 더해야 할까?

HSY_mumu 2022. 3. 16. 16:51
728x90

6079 - 언제까지 더해야 할까?

(풀이1) while문 조건 설정

n = int(input())
sum = 0
i = 1

while(sum < n):
    sum += i
    i += 1
    
print(i-1)

(sum <= n) 이 아니라 (sum < n) 이어야 하는 이유는?

입력한 수(n)보다 같거나 커져야 하므로

 

i가 아닌 (i-1) 을 출력해야하는 이유는?

i를 먼저 더하고 i를 1 증가시킨 뒤에 해당 조건문을 검사하기 때문에

 

 

(풀이2) 무한 반복문에서 종료조건으로 탈출

n = int(input())
sum = 0
i = 0

while(True):
    # 종료조건
    if(sum >= n):
        break
    i += 1      # 더해야할 값
    sum += i
print(i)

개인적으로 이 풀이가 조금 더 직관적인 것 같다

728x90