알고리즘SOLUTION/1장 정렬
백준 1026 파이썬 보물 해답
자바칩 코드팍치노
2021. 3. 31. 20:01
import sys
input = sys.stdin.readline
n = int(input()) # 0 <= n <= 50
a = list(map(int,input().split()))
b = list(map(int,input().split()))
a.sort()
# S = A[0]×B[0] + ... + A[N-1]×B[N-1]
S = 0
for i in range (n):
# b는 재정렬할 수 없는 조건이기 때문에
# b에서 가장 큰 값의 인덱스를 기준으로 리스트에서 pop 해준다.
S += a[i]*b.pop(b.index(max(b)))
print(S)
b를 재정렬할 수 없는 조건때문에
a만 정렬하고, list의 기능을 활용해서 문제를 해결했습니다.