문제 출처
https://www.acmicpc.net/problem/10819
접근 방식 및 풀이
- N의 값이 최대 8까지 이므로 배열로 만들수 있는 모든 수열들의 케이스를 조사(순열 개념 적용)
- 각 배열로 구한 값들중 가장 큰 값을 출력한다.
소스 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
import java.util.Arrays;
public class Main {
static int n ;
static int[] arr;
static int result;
static int[] tArr;
static boolean[] visited;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
arr =new int[n];
for (int i = 0; i <n ; i++) {
arr[i] =sc.nextInt();
}
visited =new boolean[n];
tArr =new int[n]; // 각순열 케이스를 담아줄 임시 저장소
result=0;
solve(0);
System.out.println(result);
}
private static void solve(int count){
if(count == n){
int sum =0;
for (int i = 0; i <n-1 ; i++) {
}
result = Math.max(result,sum);
return;
}
for (int i = 0; i <n ; i++) { // 각순열 케이스생성
if(visited[i]){
continue;
}
visited[i] =true;
tArr[count] = arr[i];// 담는다.
solve(count+1);// 재귀로 그 다음 index 늘려간다.
visited[i] =false;// 다 만들고 false로 해제
}
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
결과
'Competition > Baekjoon' 카테고리의 다른 글
[백준] 1182번 자바 부분수열의 합 (0) | 2020.04.30 |
---|---|
[백준] 1208번 자바 부분수열의 합2 (0) | 2020.04.27 |
[백준] 6603번 자바 로또 (0) | 2020.04.27 |