알고리즘 문제 풀이

백준 1789 수들의 합 (JAVA 자바)

superbono 2021. 6. 12. 02:21

문제 출처 - 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의 최댓값을 출력한다.

 

 

문제 유형

구현

 

import java.util.Scanner;

public class BJ1789_수들의합 {
	static int res;
	static long S;
	static long sum;
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		S = sc.nextLong();
		res = 0;
		while(true) {
			sum += res;
			if(sum > S) break;
			res++;
		}
		System.out.println(--res);
	}
}

 

1. 자료형 확인 잘하자! long으로 해줘야 하는데 int로 해서 틀렸었음...