import java.util.Arrays;
import java.util.Comparator;
public class MakeMin {
public int solution(int[] A, int[] B) {
int answer = 0;
Integer[] b = new Integer[B.length];
for (int i = 0; i < b.length; i++) {
b[i] = B[i];
}
Arrays.sort(A);
Arrays.sort(b, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
if (o1 > o2) {
return -1;
} else if (o1 < o2) {
return 1;
}
return 0;
}
});
for (int i = 0; i < A.length; i++) {
answer += A[i] * b[i];
}
return answer;
}
public static void main(String[] args) {
MakeMin s = new MakeMin();
int[] a1 = { 1, 4, 2 };
int[] b1 = { 5, 4, 4 };
int[] a2 = { 1, 2 };
int[] b2 = { 3, 4 };
System.out.println(s.solution(a1, b1));
System.out.println(s.solution(a2, b2));
}
}