Tags
- Dynamic Programming
- CodingTest
- LV2
- ๊น์ด ์ฐ์ ํ์
- Brute Force Algorithm
- BOJ
- DP
- ์ ์๋ก
- SpringBoot
- Study
- ๊ทธ๋ํ ์ด๋ก
- ์ ๋ ฌ
- ๊ตฌํ
- queue
- PGM
- BFS
- stack
- ๊ต์ฌ
- dfs
- ์๋ฃ๊ตฌ์กฐ
- ๋ฌธ์์ด
- ์ํ
- greedy
- ์๋ฎฌ๋ ์ด์
- Java
- ๋๋น ์ฐ์ ํ์
- ๋ฐฑํธ๋ํน
- sort
- Python
- ๊ทธ๋ํ ํ์
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_2217 : ๋กํ ๋ณธ๋ฌธ
2217๋ฒ: ๋กํ
N(1 ≤ N ≤ 100,000)๊ฐ์ ๋กํ๊ฐ ์๋ค. ์ด ๋กํ๋ฅผ ์ด์ฉํ์ฌ ์ด๋ฐ ์ ๋ฐ ๋ฌผ์ฒด๋ฅผ ๋ค์ด์ฌ๋ฆด ์ ์๋ค. ๊ฐ๊ฐ์ ๋กํ๋ ๊ทธ ๊ตต๊ธฐ๋ ๊ธธ์ด๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ค ์ ์๋ ๋ฌผ์ฒด์ ์ค๋์ด ์๋ก ๋ค๋ฅผ ์๋ ์๋ค. ํ
www.acmicpc.net
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- ์ ๋ ฅ๋ฐ์ ๋กํ๋ก ๋ค ์ ์๋ ์ต๋ ์ค๋์ ์ถ๋ ฅํ๋ค.
- ์ต๋ ์ค๋์ ๊ฐ์ฅ ์ฝํ ๋กํ * ๋กํ์ ๊ฐ์ ์ด๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int arr[] = new int[n];
for (int i = 0; i < n; i++){
arr[i] = Integer.parseInt(br.readLine());
}
Arrays.sort(arr);
int answer = 0;
for (int i = n-1; i >= 0; i--){
int temp = arr[i] * (n-i);
if (temp > answer) answer = temp;
}
System.out.println(answer);
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- n์ด ์ต๋ 100,000์ด๊ณ ๊ฐ ๋กํ์ ์ค๋์ ์ต๋ 10,000 ์ด๋ฏ๋ก, ์ต๋ ์ค๋์ ์ต๋๊ฐ์ 100,000 * 10,000 = 1,000,000,000 (10์ต)์ด๋ค. ๋ฐ๋ผ์ int(์ต๋ 20์ต)๋ฅผ ์ฌ์ฉํด๋ ๋๋ค.
- ๋ฌธ์ ์ ์ ํ์๊ฐ์ 2์ด์ด๊ณ , ์ต์๊ฐ์ ์ฌ์ฉํด์ผ ํ๋ค.
- ๋งค๋ฒ ์ต์๊ฐ์ ๊ตฌํด์ค์ผ ํ๋ฉด, O(n^2) == 10,000,000,000์ผ๋ก 100์ตํ ๊ณ์ฐ์ผ๋ก ์ฝ 100์ด๊ฐ ์์๋๋ค.
- ๋ฐ๋ผ์ ์ต์๊ฐ์ ๋ฐ๋ก ๊ตฌํด์ค ํ์๊ฐ ์๋๋ก ์ ๋ ฌํ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๊ณ์ฐํ๋ค.
- ์ค๋ฆ์ฐจ์ ์ ๋ ฌ ํ ์ต๋๊ฐ์ ์ฐพ๋ ๋ฐ๋ณต๋ฌธ์ ๋ค์ชฝ์ผ๋ก ์ํํ๋ค.
- ์ ๋ ฌํ์ผ๋ฏ๋ก ์ธ๋ฑ์ค i๋ก ๋์ค๋ ๊ฐ์ ํญ์ ์ต์๊ฐ์ด๋ค.
- (์ต์๊ฐ * ๋กํ์ ๊ฐ์)์ ์ต๋๊ฐ์ ์ถ๋ ฅํ๋ค.
๐ธ end ๐ธ
- ๋ฌธ์ ๋ฅผ ์๋ชป ํ์ ํ๊ณ DFS๋ฅผ ์ฌ์ฉํด์ผํ๋ ํ์ฐธ ๊ณ ๋ฏผํ๋ค.
- ๋ฌธ์ ํ๊ทธ๊ฐ ์ ๋ ฌ, ๊ทธ๋ฆฌ๋์ธ๊ฑธ ๋ณด๊ณ ์์ผ ํ์ด๋ฅผ ํ์
ํ ์ ์์๋ค.
- answer์ ์๋ฃํ์ ์ผ๋จ long์ผ๋ก ๋๊ณ ๋ง์๋๋ฐ, ๊ณ์ฐํด๋ณด๋ int๋ก๋ ๊ฐ๋ฅํด์ ๋ฐ๊ฟ์ฃผ์๋ค.
- ์ ๋ ฌํ์ผ๋ฏ๋ก (์ต์๊ฐ * ๋กํ์ ๊ฐ์)๊ฐ ํ ๋ฒ์ด๋ผ๋ answer๋ณด๋ค ์์ผ๋ฉด ๋ค๋ ๊ฒ์ฌํ์ง ์์๋ ๋๋ ์ค ์์๋ค.
- (์ต์๊ฐ)์ด ๋๋ฌด ์์์ ์ผ์์ ์ผ๋ก ๋ ์๊ฒ ๋์ฌ ์ ์์ง๋ง, (๋กํ์ ๊ฐ์)๊ฐ ์ปค์ง๋ฉฐ ๋ค์ ์ต๋๊ฐ์ด ๊ฐฑ์ ๋ ์ ์์ผ๋ฏ๋ก ์ ๋ถ ํ์ธํด์ผ ํ๋ค.
- ํน์ ํ์ด ์ด์ ์ด ํ๋ ธ์๊น ํด์ ๋ค๋ฅธ ํ์ด๋ค์ ํ์ธํด๋ดค์์ง๋ง, ์์ ์ด์ ๋๋ฌธ์ ํ๋ฆฐ๊ฑฐ์๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_17093 : Total Circle (0) | 2022.10.19 |
---|---|
BOJ_25205 : ๊ฒฝ๋ก๋นํํฌ 2077 (0) | 2022.10.19 |
BOJ_2714 : ๋ฌธ์๋ฅผ ๋ฐ์ ์นํ์ด (0) | 2022.10.10 |
BOJ_1065 : ํ์ (0) | 2022.10.10 |
BOJ_2635 : ์ ์ด์ด๊ฐ๊ธฐ (0) | 2022.10.08 |