Algorithm/Baekjoon
Baekjoon 1789 수들의 합 JAVA
Hunveloper
2022. 2. 16. 14:35
728x90
1789번: 수들의 합
첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.
www.acmicpc.net
문제
서로 다른 N개의 자연수의 합이 S라고 한다. S를 알 때, 자연수 N의 최댓값은 얼마일까?
입력
첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.
출력
첫째 줄에 자연수 N의 최댓값을 출력한다.
풀이
입력의 범위 때문에 int 대신에 long을 사용
브루트포스방식으로 값을 더해가면서 S보다 작을때의 n값을 출력한다.
코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long s = sc.nextLong(), n=1;
while(n*(n+1)/2<=s)
n++;
System.out.println(n-1);
}
}
728x90
728x90