package com.company;
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = null;
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
for (int t = 0; t < T; t++) {
st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int answer = 0;
List<Integer> list = new ArrayList<>();
for (int i = 0; i < N; i++) {
list.add(Integer.parseInt(st.nextToken()));
}
list.sort(Collections.reverseOrder()); // 빚을 정렬
// M을 1부터 탐색하면서 추가적으로 갚아야 할 돈의 최소값 찾음
for (int i = 1; i < N; i++) {
long a = Long.MAX_VALUE;
long sum = 0;
int l = 0;
int r = 1;
while (r < N) {
sum += list.get(l) - list.get(r);
if (r - l == i) {
a = Math.min(sum, a);
l++;
sum -= (long) (list.get(l - 1) - list.get(l)) * i;
}
r++;
}
answer += a;
}
sb.append(answer).append("\n");
}
System.out.println(sb);
}
}
'코딩테스트 > [백준] 코딩테스트 연습' 카테고리의 다른 글
미세먼지 안녕! - 17144번 (0) | 2022.04.19 |
---|---|
나무 재테크 - 16235번 (0) | 2022.04.18 |
낚시왕 - 17143번 (0) | 2022.04.13 |
소수의 연속합 - 1644번 (0) | 2022.04.12 |
캐슬 디펜스 - 17135번 (0) | 2022.04.08 |