problem-1026

유성·2022년 11월 27일
0

PS

목록 보기
35/47

과정
1. a를 오름차순으로 정렬
2. b를 내림차순으로 정렬
3. 곱해서 결과값에 더하기
-> 이 방법은 문제에서 금지하고 있긴 하다. 다른 방법으로는 a는 오름차순정렬, b에서는 최댓값의 인덱스를 찾아서 곱하고 그 최댓값을 b에서 제거하는 방식으로 하면 되지만 매우 비효율적!

n=int(input())
a=list(map(int,input().split()))
b=list(map(int,input().split()))
a.sort()
b.sort(reverse=True)

ans=0
for i in range(n):
    ans+=a[i]*b[i]
print(ans)

time:5분

profile
기록

0개의 댓글