[CodeUp 기초 100제] 6086번 풀이 with 파이썬(python)

Jeony·2021년 9월 14일
0

codeup 기초 100제

목록 보기
86/98
post-thumbnail

문제

종합

1, 2, 3 ... 을 순서대로 계속 더해 합을 만드는데,
그 합이 입력한 정수보다 작을 동안만 계속 더하는 프로그램을 작성해보자.

즉, 1부터 n까지 정수를 하나씩 더해 합을 만드는데,
어디까지 더해야 입력한 수보다 같거나 커지는지 알아보고자 하는 문제이다.

하지만, 이번에는 그 때 까지의 합을 출력해야 한다.

예를 들어, 57을 입력하면
1+2+3+...+8+9+10=55에서 그 다음 수인 11을 더해 66이 될 때,
그 값 66이 출력되어야 한다.

예시

while True :
  s += c
  c += 1
  if s>=n :
    break

print(s)

입력 예시

1024 768 24

출력 예시

2.25 MB

답안

모델 답안

n = int(input())
s = 0
t = 0

while True:
    t=t+1
    s=s+t
    if n<=s:
    	break
print(s)

내 답안

n = int(input())
growing_n = 0
count = 0

while True:
    count += 1
    growing_n = growing_n + count

    if n <= growing_n:
        break
    
print(growing_n)

풀이

내 풀이

또 피보나치 문제가 등장했네요!!
이전에 풀었던 6079번 피보나치 문제와 개념이 같아요😏
풀이가 궁금하신 분들은 밑에 이전 문제 링크로 들어가보세요!😃

이전 문제 풀이 보기!

input(): 프롬프트를 띄워서 사용자의 입력 받을 수 있게 해준다.
(단, 입력 받은 것은 문자열로 저장된다. print(type()))으로 type() 괄호 안에 변수를 넣고 찍으면 정수인지, 문자열인지, 무슨 타입인지 확일 할 수 있다!)

int(n): 위의 input()에서 말했듯이 input으로 받은 값은 문자열로 저장된다.
산술을 하기 위해, 문자열을 정수로 변환시켜주는 int()를 써서 변환시켜준다.

while문: 조건이 True면 밑에 내용 실행!
while 조건식:
(들여쓰기칸) 실행문

while문은 조건식이 계속 맞도록 해주면 무한으로 반복할 수 있다!
ex)

while True
    print("ㅎㅎ")

멈추지 않는 이상 계속 반복

print(): 괄호 안의 내용을 출력!

profile
알고리즘으로 문제를 해결하다가 포기함

0개의 댓글