Tags
- Brute Force Algorithm
- LV2
- ์ํ
- Java
- SpringBoot
- Dynamic Programming
- BOJ
- greedy
- BFS
- CodingTest
- stack
- queue
- ๊น์ด ์ฐ์ ํ์
- ์ ๋ ฌ
- sort
- ๊ทธ๋ํ ํ์
- PGM
- ์ ์๋ก
- ๋ฌธ์์ด
- ๋๋น ์ฐ์ ํ์
- ๊ต์ฌ
- ๊ตฌํ
- ๋ฐฑํธ๋ํน
- ์๋ฎฌ๋ ์ด์
- Study
- DP
- ์๋ฃ๊ตฌ์กฐ
- ๊ทธ๋ํ ์ด๋ก
- Python
- dfs
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_15657 : N๊ณผ M (8) ๋ณธ๋ฌธ
15657๋ฒ: N๊ณผ M (8)
N๊ฐ์ ์์ฐ์์ ์์ฐ์ M์ด ์ฃผ์ด์ก์ ๋, ์๋ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ธธ์ด๊ฐ M์ธ ์์ด์ ๋ชจ๋ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. N๊ฐ์ ์์ฐ์๋ ๋ชจ๋ ๋ค๋ฅธ ์์ด๋ค. N๊ฐ์ ์์ฐ์ ์ค์์ M๊ฐ๋ฅผ ๊ณ ๋ฅธ ์์ด
www.acmicpc.net
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- n๊ฐ์ ์ ์ค์์ m๊ฐ๋ฅผ ๋ฝ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ์ถ๋ ฅํ๋ค.
- ์์ด์ ์ค๋ณต๋๋ฉด ์๋๋ฉฐ ๋น๋ด๋ฆผ์ฐจ์, ์ฌ์ ์ ์ฆ๊ฐ์์์ด๋ค.
- ์ฌ๊ท๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ m๊ฐ์ ์๋ฅผ ๊ณ ๋ฅธ๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class Main {
private static void dfs(int[] arr, ArrayList<Integer> pick, int n, int m, int i){
if (pick.size() == m) {
for (int j : pick) {
System.out.print(j + " ");
}
System.out.println("");
return;
}
for (int j = i; j < n; j++) {
pick.add(arr[j]);
dfs(arr, pick, n, m, j);
pick.remove(pick.size()-1);
}
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
Arrays.sort(arr);
ArrayList<Integer> pick = new ArrayList<>();
dfs(arr, pick, n, m, 0);
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ์ฌ๊ท๋ฉ์๋๋ก ์๋ฅผ ๊ณจ๋ผ ArrayList์ ์ ์ฅํ๊ณ m๊ฐ๊ฐ ๋๋ฉด ์ถ๋ ฅํ๋ค.
๐ธ end ๐ธ
- N๊ณผ M ์๋ฆฌ์ฆ์์ ์ด์ ์ ๋์จ๊ฑฐ๋ ์์ ํ ๊ฐ์ ๊ฒ ๊ฐ์๋ฐ ์ 8๋ฒ์ธ์ง ๋ชจ๋ฅด๊ฒ ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_1904 : 01ํ์ผ (0) | 2022.12.18 |
---|---|
BOJ_14501 : ํด์ฌ (0) | 2022.12.17 |
BOJ_15656 : N๊ณผ M (7) (0) | 2022.12.14 |
BOJ_15351 : ์ธ์ ์ ์ (0) | 2022.12.14 |
BOJ_15654 : N๊ณผ M (5) (0) | 2022.12.14 |