Tags
- BFS
- ๊ทธ๋ํ ํ์
- greedy
- ๋ฌธ์์ด
- ๊น์ด ์ฐ์ ํ์
- ๊ทธ๋ํ ์ด๋ก
- SpringBoot
- ์ ๋ ฌ
- dfs
- ๊ต์ฌ
- LV2
- Brute Force Algorithm
- sort
- CodingTest
- BOJ
- Java
- ์๋ฃ๊ตฌ์กฐ
- ์ ์๋ก
- Study
- queue
- DP
- Python
- ๊ตฌํ
- PGM
- ๋ฐฑํธ๋ํน
- ์ํ
- ์๋ฎฌ๋ ์ด์
- stack
- Dynamic Programming
- ๋๋น ์ฐ์ ํ์
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_2018 : ์๋ค์ ํฉ 5 ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- 1๋ถํฐ N์ดํ์ ์๋ค์ ํฉ์ด N์ด ๋์ค๋ ๊ฒฝ์ฐ์ ์๋ฅผ ์ถ๋ ฅํ๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int answer = 1;
int start = 1;
int end = 1;
long sum = 1;
while (end < n){
if (sum == n){
answer++;
sum += ++end;
} else if (sum > n) {
sum -= start++;
} else if (sum < n) {
sum += ++end;
}
}
System.out.println(answer);
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- 1๋ถํฐ N-1๊น์ง ๋์ดํ์๋, ๋ฒ์๋ฅผ ์ง์ ํด ํฉ์ด N์ด ๋๋์ง ํ์ธํ๋ ๋ฐฉ์์ผ๋ก ๊ฒฝ์ฐ์ ์๋ฅผ ์ผ๋ค.
- ๋ฒ์์ ์ผ์ชฝ ์ธ๋ฑ์ค๋ start, ์ค๋ฅธ์ชฝ ์ธ๋ฑ์ค๋ end, ํฉ์ sum์ผ๋ก ๊ณ์ฐํ๋ค.
- 1๋ถํฐ ์์ํ๋ฏ๋ก sum์ ์ด๊ธฐ๊ฐ์ 1์ด๋ค.
- N์ ๋ฌด์กฐ๊ฑด ํ ๊ฐ๋ก ์ธ์ง๋ฏ๋ก answer์ ์ด๊ธฐ๊ฐ์ 1์ด๋ค.
- ๋ฐ๋ณต๋ฌธ์ ๋๋ฉฐ end๊ฐ N์ด ๋ ๋ ๊น์ง ๊ณ์ฐํ๋ค.
- ํฉ sum๊ณผ N์ด ๊ฐ๋ค๋ฉด ๊ฒฐ๊ณผ answer๋ฅผ +1 ํ๋ค.
- ํฉ์ด ๋ ํฌ๋ค๋ฉด, start๋ฅผ sum์์ ๋นผ๊ณ start๋ฅผ +1 ํ๋ค.
- N์ด ๋ ํฌ๋ค๋ฉด, end๋ฅผ +1ํ๊ณ sum์ ๋ํ๋ค.
๐ธ end ๐ธ
- ํฌ ํฌ์ธํฐ ๋ฌธ์ ๋ ์ธ์ํ๊ณ ํ์ด๋ณธ ์ ์์ง๋ง ๊ฐ๋จํ ์๊ณ ๋ฆฌ์ฆ์ด๋ผ ์ดํดํ๊ธฐ ์ฌ์ ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_1253 : ์ข๋ค (0) | 2022.09.24 |
---|---|
BOJ_1940 : ์ฃผ๋ชฝ (0) | 2022.09.24 |
BOJ_10986 : ๋๋จธ์ง ํฉ (0) | 2022.09.23 |
BOJ_1384 : ๋ฉ์์ง (0) | 2022.09.23 |
BOJ_11669 : ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 5 (0) | 2022.09.22 |