https://www.acmicpc.net/problem/1026
B배열은 고정인 상태에서 A배열만 바꾸어 배열의 곱의 합이 최소를 찾는문제
B가 고정이니를 중점으로 두면안댐.
결국 고정이어도 A배열을 역소팅, B배열을 소팅해서 곱의 합산이 최소화 되게만 시키면댐
※처음에 직관적으로 B를 고정이라해서, permutations함수를 통해 A의 리스트 조합들을 구해주고 여기서 최소값을 찾아봤는데, 메모리초과가뜸.
머리를 써야했는데.....
from itertools import permutations
import sys
N=int(sys.stdin.readline())
A=list(map(int,sys.stdin.readline().split()))
B=list(map(int,sys.stdin.readline().split()))
AList=sorted(A,reverse=True)
BList=sorted(B)
minValue=0
for i in range(0,len(AList)):
minValue+=AList[i]*BList[i]
print(minValue)