Algorithm 최소값 만들기

최소값 만들기

algo

최솟값 만들기는 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱한 값을 누적하여 더합니다.

  • A, B의 길이는 같습니다.

접근방법

  1. 두 배열의 곱이 최소가 될려면 정렬을 해야한다
  2. 곱을 하지않은 A배열의 가장 작은 수와 B배열의 가장 큰 수를 길이만큼 반복하여 곱한다.
  3. 곱한값들을 answer에다가 합친다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package getMinSum;

import java.util.Arrays;

public class GetMinSum {

public int getMinSum(int[] A, int[] B) {
// TODO Auto-generated method stub
int answer = 0;
Arrays.sort(A);
Arrays.sort(B);

int i = 0;
while(i < A.length) {
answer += A[i] * B[B.length-i-1];
i++;
}

return answer;
}

public static void main(String[] args) {
GetMinSum gms = new GetMinSum();
int[] A = {1,5,2};
int[] B = {2,5,3};
System.out.println(gms.getMinSum(A,B));

}

}
Share