반응형
며칠간 그래프 문제만 풀었더니 이러다 순열조합을 까먹을 것 같아 얼른 풀고 정리하려고 한다.
https://www.acmicpc.net/problem/6603
전형적인 조합문제다.
순서 상관없이 주어진 숫자 중에서 6개를 뽑으면 되는 문제다.
다음은 코드.
나~중에 혹시 조합이 생각안나게 된다면(ㄹㅇ 그러면 자살각) 참고하도록.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class BOJ6603 {
static int[] arr;
static boolean[] visited;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while(true) {
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
if(N == 0) break;
arr = new int[N];
visited = new boolean[N];
for(int i=0; i<N; i++) {
arr[i] = Integer.parseInt(st.nextToken());
}
combi(N, 0,0);
System.out.println();
}
}
static void combi(int N, int cnt, int start) {
if(cnt ==6) {
for (int i = 0; i < arr.length; i++) {
if(visited[i]) {
System.out.print(arr[i]+" ");
}
}
System.out.println();
return;
}
for(int i=start; i<N; i++) {
visited[i] = true;
combi(N, cnt+1, i+1);
visited[i] = false;
}
}
}
반응형
'개발삽질 > SSAFY하는 동안 기록' 카테고리의 다른 글
[BOJ]2293_동전1(dp) (0) | 2022.03.12 |
---|---|
[BOJ]9370_미확인도착지(특정경로 다익스트라) (0) | 2022.03.09 |
[BOJ]11724_연결요소의개수(DFS) (0) | 2022.03.08 |
[BOJ]4485_녹색 옷 입은 애가 젤다지?(다익스트라) (0) | 2022.03.06 |
[BOJ]2667_단지번호붙이기(bfs) (0) | 2022.03.03 |
댓글