๋ฐ์ํ
https://www.acmicpc.net/problem/1789
์ฝ๋
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
long num = scan.nextLong();
long sum = 0;
int count = 0;
for(int i=1; ; i++) {
if(sum > num) break;
sum += i;
count ++;
}
System.out.println(count-1);
scan.close();
}
}
ํ์ด
์๊ฐ๋ณด๋ค ์์ฒญ ๋จ์ํ ๋ฌธ์ ์๋ค.
์๋ก ๋ค๋ฅธ N๊ฐ์ ์์ฐ์์ ํฉ์ด S๋ผ๊ณ ํ๋ค. S๊ฐ ์ฃผ์ด์ง ๋, N์ ์ต๋๊ฐ์ ?
์ฆ ์๋ก ๋ค๋ฅธ N๊ฐ๋ฅผ ๊ตฌํด S๊ฐ ๋๋ N์ ์ต๋๊ฐ์ ๊ตฌํ๋ ๋ฌธ์ ๋ค.
N์ด ์ต๋๊ฐ์ด ๋๋ ค๋ฉด ? ๊ฐ์ฅ ์์์๋ค๋ถํฐ ๋ํด๊ฐ์ผํ๋ค.
์๋ฅผ๋ค์ด S = 50์ด๋ผ๊ณ ํด๋ณด์,
1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55 ์ด๋ค.
์ด๋, 5๋ง ๋นผ์ฃผ๋ฉด ํฉ์ 50์ด ๋๊ณ , N์ ์ต๋๊ฐ์ด ๋๋ค.
์ฆ, 1๋ถํฐ ์ฐจ๋ก๋๋ก ์ซ์๋ฅผ ๋ํด S๋ณด๋ค ํฐ ๊ฐ์ ์ฐพ๊ณ , ๊ทธ๋ count -1์ ์ถ๋ ฅํ๋ฉด ๋๋ค.
* ์ฃผ์ด์ง S์ ๋ฒ์๋๋ฌธ์ int๊ฐ ์๋ long์ผ๋ก ์ ์ธํด์ผ ํ๋ค.
๋ฐ์ํ
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 1526๋ฒ: ๊ฐ์ฅ ํฐ ๊ธ๋ฏผ์(์๋ฎฌ๋ ์ด์ ) (0) | 2020.03.04 |
---|---|
[๋ฐฑ์ค] 2563๋ฒ: ์์ข ์ด(์์ ํ์, ๊ตฌํ) (0) | 2020.03.04 |
[๋ฐฑ์ค] 1764๋ฒ: ๋ฃ๋ณด์ก(๊ตฌํ, ์ ๋ ฌ) - HashSet (0) | 2020.03.04 |
ํ๋ก๊ทธ๋๋จธ์ค[Java] - ์นดํซ(์์ ํ์, ์ํ) (0) | 2020.03.04 |
[๋ฐฑ์ค] 13300๋ฒ: ๋ฐฉ ๋ฐฐ์ (๊ตฌํ) (0) | 2020.03.04 |
๋๊ธ