728x90
import java.io.*;
import java.util.*;
public class Main {
static int answer = Integer.MAX_VALUE;
/* output setting */
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
/* input reader */
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// ArrayList<Integer> list = new ArrayList<>();
/* input tokenizer */
while(true)
{
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
if(n == 0)
break;
int[] array = new int[n];
boolean[] visited = new boolean[n];
for(int i = 0 ; i < n ; i++)
{
array[i] = Integer.parseInt(st.nextToken());
}
dfs(array, visited, 0, 0, 0);
System.out.println();
}
br.close();
}
public static void dfs(int[] array, boolean[] visited, int depth, int start, int now)
{
if(depth >= 6) // 6개만 뽑을꺼여서
{
for(int ii = 0 ; ii < array.length ; ii++) // true 인건 만 출력(방문했다)
{
if(visited[ii] == true)
System.out.print(array[ii] + " ");
}
System.out.println();
return;
}
for (int ii = start; ii < array.length; ii++)
{
/* 현재의 값보다 크다 라는 수식을 안넣으면 순열이 나온다 */
if (visited[ii] == false && array[ii] >= array[now])
{
visited[ii] = true;
dfs(array, visited, depth + 1, start, ii);
visited[ii] = false;
}
}
}
}
728x90
'코딩 테스트' 카테고리의 다른 글
5397번 키로거(자바, java) - 백준 문제풀이 (0) | 2023.01.11 |
---|---|
1158번 요세푸스 문제(자바, java) - 백준 문제풀이 (0) | 2023.01.11 |
1012번 유기농 배추 문제(자바, java) - 백준 문제풀이 (0) | 2023.01.11 |
7576번 토마토 문제(자바, java) - 백준 문제풀이 (0) | 2023.01.09 |
11728번 배열 합치기 문제(자바, java) - 백준 문제풀이 (0) | 2023.01.09 |