https://school.programmers.co.kr/learn/courses/30/lessons/12941
각 배열을 정렬해서
A배열은 가장 작은 값부터
B배열은 가장 큰 값부터
서로 곱해주고 더해주었다.
왜? 그래야만 최솟값이 나오기 때문에
public int solution(int []A, int []B)
{
int answer = 0;
Arrays.sort(A);
Arrays.sort(B);
for (int i = 0; i < A.length; i++) {
answer += A[i] * B[B.length -1 - i];
}
return answer;
}
너무 좋은 글이네요. 공유해주셔서 감사합니다.