import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(br.readLine());
int[] a = new int[t];
int[] b = new int[t];
int result = 0;
for (int i = 0; i < 2; i++) {
String[] temp = br.readLine().split(" ");
for (int j = 0; j < t; j++) {
if (i == 0) a[j] = Integer.parseInt(temp[j]);
if (i == 1) b[j] = Integer.parseInt(temp[j]);
}
}
Arrays.sort(a);
Arrays.sort(b);
for (int i = 0; i < t; i++) {
result += (a[i] * b[t-i-1]);
}
System.out.println(result);
}
}
DFS로 풀면 시간초과가 뜸
문제에서는 b의 순서를 바꾸면 안된다고는 하지만 어차피 문제의 요점은 작은 수 * 큰 수가 요점이기 때문에 그냥 a와 b를 오름차순 정렬 후 a는 작은 수부터 b는 큰 수부터 사용하면 됨