PS/Python
[Python] 백준 1026번: 보물
yoo.o
2020. 10. 13. 19:58
반응형
문제
1026번: 보물
첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거�
www.acmicpc.net
풀이
Ai * Bi의 값의 합이 최소가 되는 값을 출력하면 되는 문제다
문제 이해를 위해 A를 재배열할 수 있으나 B는 재배열하지 못한다고 써있지만
그냥 둘다 소팅해서 작은애랑 큰애를 곱해주면 된다.
A: 오름차순 정렬, B: 내림차순 정렬 후 A[i]*B[i]를 다 더해주기
import sys
N = int(sys.stdin.readline())
A = list(map(int, sys.stdin.readline().split(" ")))
B = list(map(int, sys.stdin.readline().split(" ")))
A.sort()
B.sort(reverse=True)
result = 0
for i in range(N):
result += A[i] * B[i]
print(result)
반응형