본문 바로가기
Develop/백준 (Cpp)

[백준] 1789번 : 수들의 합 (C++)

by Tarra 2023. 8. 10.

1789번 : 수들의 합


문제)

서로 다른 N개의 자연수의 합이 S라고 한다. S를 알 때, 자연수 N의 최댓값은 얼마일까?

 
 

 

입력 :

첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.

 

 

 

 

출력 :

첫째 줄에 자연수 N의 최댓값을 출력한다.

 

 

 

 

 

 

풀이)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
using namespace std;
 
long long s;
 
int main()
{
    cin >> s;
 
    long long total = 0;
    for (int i = 1; i <= s; i++)
    {
        total += i;
        if (total > s)
        {
            total = i - 1;
            break;
        }
    }
 
    cout << total;
 
    return 0;
}
 
cs

 

 


출처 : https://www.acmicpc.net/problem/1789 

 

1789번: 수들의 합

첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.

www.acmicpc.net