본문 바로가기

알고리즘 (Python)/코드업 기초 100제

[CodeUp] 코드업 기초 100제 1080번 풀이 - 파이썬(python)

728x90
반응형

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

시간 제한 : 1초 메모리 제한 : 128 MB

 


 

문제 설명

 

1, 2, 3 ... 을 계속 더해 나갈 때,
그 합이 입력한 정수(0 ~ 1000)보다 같거나 작을 때까지
계속 더하는 프로그램을 작성해보자.

즉, 1부터 n까지 정수를 계속 더한다고 할 때,
어디까지 더해야 입력한 수보다 같거나 커지는지 알아보고자 하는 문제이다.

입력

 

정수 1개가 입력된다.

출력

 

1, 2, 3, 4, 5 ... 를 순서대로 계속 더해 합을 만들어가다가,
입력된 정수와 같거나 커졌을 때, 마지막에 더한 정수를 출력한다.

입력 예시

 

55

출력 예시

 

10

내 풀이

 

a=int(input())

i=0
total=0

while total < a:
    i = i + 1
    total = total + i
    
print(i)

모범 답안

 

a=input()

n=int(a)

i=0
s=0
while s<n :
    i+=1
    s+=i

print(i)

해설

 

정수 a를 int형으로 입력받습니다.
그리고 while 반복문으로 total이라는 변수가 입력받은 정수 a보다 커지기 전까지 계속 반복합니다.
반복문 안에서는 i를 증가시키고 증가시킨 i 만큼 total에 더해줍니다.
마지막에 더한 i가 마지막에 더한 정수가 되므로 while 반복문이 끝나고 나면 print() 함수로 i를 출력해줍니다.
728x90
반응형