삼성 SW 테스트 기출문제 - 백준 15686 치킨배달을 풀었다.
https://www.acmicpc.net/problem/15686
소요 시간 40분
풀이 : 치킨 집과 집을 각각 ArrayList에 때려박음.
조합으로 폐쇄하지 않을 M개를 뽑음.
public static void choice(int arr[], int n, int r, int idx, int target){
if(r==0){
ArrayList<Point> tmp = new ArrayList<Point>();
for(int i=0;i<arr.length;i++){
tmp.add(chik.get(arr[i]));
}
countLen(tmp);
}
else if(target==n){
return ;
} else {
arr[idx] = target;
choice(arr, n, r-1, idx+1, target+1);
choice(arr, n, r, idx, target+1);
}
}
뽑은 뒤, 각 집에 대해서 치킨집 최소거리를 구함.
모든 조합에 대해서 최소거리를 구해서 원하는 답을 찾는다.
JAVA 코드는 다음과 같다.
'알고리즘' 카테고리의 다른 글
백준 15685 드래곤 커브 JAVA (0) | 2020.03.05 |
---|---|
백준 14501 퇴사 - JAVA (0) | 2020.03.04 |
백준 14502 연구소 - JAVA (0) | 2020.03.02 |
[백준 13458 - JAVA] 시험감독 (0) | 2020.03.01 |
[JAVA 백준 16236] - 아기상어 (0) | 2020.02.27 |