Tags
- Java
- SpringBoot
- queue
- ๊ทธ๋ํ ์ด๋ก
- Brute Force Algorithm
- Python
- dfs
- sort
- ๋ฌธ์์ด
- ๋๋น ์ฐ์ ํ์
- ๊ตฌํ
- Study
- ๊ต์ฌ
- PGM
- ๊น์ด ์ฐ์ ํ์
- greedy
- DP
- ์ ๋ ฌ
- ์๋ฎฌ๋ ์ด์
- LV2
- CodingTest
- ๋ฐฑํธ๋ํน
- stack
- BOJ
- ๊ทธ๋ํ ํ์
- Dynamic Programming
- ์ ์๋ก
- BFS
- ์ํ
- ์๋ฃ๊ตฌ์กฐ
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_15657 : N๊ณผ M (8) ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- 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 |