728x90
반응형
https://www.acmicpc.net/problem/1789
1789번: 수들의 합
첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.
www.acmicpc.net
문제
서로 다른 N개의 자연수의 합이 S라고 한다. S를 알 때, 자연수 N의 최댓값은 얼마일까?
입력
첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.
출력
첫째 줄에 자연수 N의 최댓값을 출력한다.
예제 입력 1
200
예제 출력 1
19
풀이
설명
- n(n+1)/2은 1부터 n까지의 합을 계산해 준다.
- 위의 값이 N보다 작거나 같을 때까지 while문을 돌며 n값을 1씩 증가시킨다.
- n이 1부터 시작하므로 출력할 때 n에서 1을 감소하여 출력한다.
코드
N = int(input())
n = 1
while N >= n*(n+1)/2:
n += 1
print(n-1)
728x90
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[Algorithm] 백준 11650번 좌표 정렬하기 (Python) (0) | 2023.03.04 |
---|---|
[Algorithm] 백준 2839번 설탕 배달 (Python) (0) | 2023.03.03 |
[Algorithm] 백준 10818번 최소, 최대 (Python) (0) | 2023.03.01 |
[Algorithm] 백준 11653번 소인수분해 (Python) (0) | 2023.02.28 |
[Algorithm] 백준 10814번 나이순 정렬 (Python) (0) | 2023.02.27 |