본문 바로가기
Algorithm/Baekjoon

Baekjoon 1789 수들의 합 JAVA

by Hunveloper 2022. 2. 16.
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

'Algorithm > Baekjoon' 카테고리의 다른 글

Baekjoon 13300 방 배정 JAVA  (0) 2022.02.16
Baekjoon 10163 색종이 JAVA  (0) 2022.02.16
Baekjoon 11279 최대 힙 JAVA  (0) 2022.02.16
Baekjoon 1927 최소 힙 JAVA  (0) 2022.02.16
Baekjoon 1074 Z JAVA  (0) 2022.02.15

댓글