코린이의 소소한 공부노트

[LeetCode/Easy] 1984. Minimum Difference Between Highest and Lowest of K Scores 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 1984. Minimum Difference Between Highest and Lowest of K Scores

무지맘 2023. 4. 24. 15:16

1. Input

1) int[] nums

2) int k

 

2. Output

1) nums의 요소 중 랜덤으로 k개를 골랐을 때, k개의 점수 중 가장 큰 값과 가장 작은 값의 차이를 구한다. 구할 수 있는 모든 차 중에서 가장 작은 값을 반환한다.

 

3. Constraint

1) 1 <= k <= nums.length <= 1000

2) 0 <= nums[i] <= 10^5

 

4. Example

Input: nums = [9,4,1,7], k = 2 -> Output: 2

설명: 97을 골랐을 때 그 차가 2로 가장 작다.

 

5. Code

1) 첫 코드(2023/04/24)

if(nums.length==1)
    return 0;
Arrays.sort(nums);
int min = nums[nums.length-1] - nums[0];
for(int i=0 ; i<=nums.length-k ; i++)
    min = Math.min(min, nums[i+k-1]-nums[i]);
return min;