알고리즘/기타
[Cos pro 1급] 6차 문제3) 큰수와 작은수의 차이(java)
흰싸라기
2022. 8. 25. 17:15
COS PRO 1급 기출문제 - Java - 구름EDU
YBMIT에서 시행하는 COS Pro 자격증으로 기출문제를 직접 풀어볼 수 있는 실습 위주의 강좌입니다.
edu.goorm.io
[문제]

[문제풀이]
import java.util.*;
class Main {
public int solution(int[] arr, int K) {
int answer = arr[arr.length-1]-arr[0];
Arrays.sort(arr);
for(int i=0;i+K<arr.length+1;i++)
answer = Math.min(answer, arr[i+K-1]-arr[i]);
return answer;
}
public static void main(String[] args) {
Main sol = new Main();
int[] arr = {9, 11, 9, 6, 4, 19};
int K = 4;
int ret = sol.solution(arr, K);
System.out.println("solution 메소드의 반환 값은 " + ret + " 입니다.");
}
}
: 정렬 후 그리디 알고리즘으로 문제 풀이. 인덱스 별 선택할 수 있는 가장 차이가 적은 값은 K-1 뒤에 있는 값임을 이용.