๋ฌธ์
๋ฌธ์ ๋งํฌ https://www.acmicpc.net/problem/2292
- ์ก๊ฐํ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฒ์ง์ด ์์ผ๋ฉฐ ์ค์์ ๋ฐฉ 1๋ถํฐ ์์ํด์ ์ด์ํ๋ ๋ฐฉ์ ๋์๊ฐ๋ฉด์ 1์ฉ ์ฆ๊ฐํ๋ ๋ฒํธ๋ฅผ ์ฃผ์๋ก ๋งค๊ธธ ์ ์๋ค.
- ์ซ์ N์ด ์ฃผ์ด์ก์ ๋, ๋ฒ์ง์ ์ค์ 1์์ N๋ฒ ๋ฐฉ๊น์ง ์ต์ ๊ฐ์์ ๋ฐฉ์ ์ง๋์ ๊ฐ ๋ ๋ช ๊ฐ์ ๋ฐฉ์ ์ง๋๊ฐ๋์ง(์์๊ณผ ๋์ ํฌํจํ์ฌ)๋ฅผ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
- ์๋ฅผ ๋ค๋ฉด, 13๊น์ง๋ 3๊ฐ, 58๊น์ง๋ 5๊ฐ๋ฅผ ์ง๋๋ค.
- ์ฒซ์งธ ์ค์ N(1 ≤ N ≤ 1,000,000,000)์ด ์ฃผ์ด์ง๋ค.
์์ด๋์ด
- ํ ๋๋ ๋น ์ก๊ฐํ์ด 6์ ๋ฐฐ์๋ก ๋์ด๋๋ฏ๋ก ์ด๋ฅผ ํ์ฉํด์ ํ ๋๋ ์ ์ต๋ ๋ฐฉ ๋ฒํธ๋ฅผ ๊ณ์ฐํด, ๊ทธ ๋ฐฉ๋ฒํธ๋ณด๋ค ์์ผ๋ฉด .while๋ฌธ์ ๊ทธ๋ง๋๋ฆฌ๊ณ ํฌ๋ฉด ์นด์ดํธ + 1์ ํ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ๋ฉด ๋ ๊ฒ ๊ฐ์๋ค.
๊ฒช์ ์ํ์ฐฉ์ค
- ๋ฌธ์ ์ ๊ทธ๋ฆผ์ด ์์๋๋ฐ ์ฒ์์ ์๋ชป๋ด์ ํท๊ฐ๋ ธ์๋ค...ใ ...
์ฝ๋
import java.io.*;
import java.util.*;
public class BOJ2292 {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
// ์
๋ ฅ๊ฐ์ด 1์ผ๋, ์๊ธฐ ๋ฐฉ์ด๋ฏ๋ก ์ง๋๊ฐ๋ ๋ฐฉ 1๊ฐ
if(N == 1){
System.out.println(1);
}
else{
// ๋ฐฉ ๋ฒํธ
int r = 1;
// ๋ช๊ฐ์ ๋ฐฉ ์ง๋๊ฐ๋์ง ์นด์ดํธ
int cnt = 1;
// ๋ฐฉ์ ๊ฐ์๊ฐ 6์ ๋ฐฐ์๋งํผ ๋์ด๋๋ฏ๋ก ๋ฐฐ์๋ฅผ ์ฒ๋ฆฌํ ๋ณ์
int i = 1;
while(true){
// ํ ๋๋ ์ ์๋ ๋ฐฉ์ ์ต๋ ๋ฒํธ ๊ณ์ฐ
// ๊ทธ์ ์ต๋ ๋ฒํธ + 6์ ๋ฐฐ์ ๋งํผ ๋์ด๋๋ ๋ฐฉ์ด๋ฏ๋ก 6 * i๋งํผ ๋ํด์ค
r = r + 6 * i;
// ๋ฐฐ์๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด์ + 1
i = i + 1;
// ํ ๋ฐํด๋ฅผ ๋๋๋ง๋ค ์ง๋๊ฐ๋ ๋ฐฉ์ด ํ๊ฐ ๋์ด๋๋ฏ๋ก + 1
cnt = cnt + 1;
// ๋ง์ฝ ๊ฐ์ผ๋๋ ๋ฐฉ ๋ฒํธ๊ฐ ํ ๋๋ ์ ์๋ ๋ฐฉ์ ์ต๋ ๋ฒํธ๋ณด๋ค ์๋ค๋ฉด ์ข
๋ฃ
if(N <= r){
break;
}
}
System.out.println(cnt);
}
}
}
'์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] BOJ 15829 Hashing (2) | 2024.07.11 |
---|---|
[Java] BOJ 2798 ๋ธ๋์ญ (1) | 2024.07.10 |
[Java] BOJ 2231 ๋ถํดํฉ (0) | 2024.07.10 |
[Java] BOJ 1978 ์์ ์ฐพ๊ธฐ (0) | 2024.07.09 |
[Java] BOJ 30802 ์ฐ์ปดํคํธ (0) | 2024.07.09 |