https://www.acmicpc.net/problem/1026
풀이
- 배열 A와 배열 B를 세팅
- 배열 A는 오름차순으로 정렬하고, 배열 B는 내림차순으로 정렬
- 배열 A와 배열 B의 요소를 순서대로 곱하여 그 합을 구한다
import sys
input = sys.stdin.read
# 입력 받기
data = input().split()
n = int(data[0])
A = list(map(int, data[1:n+1]))
B = list(map(int, data[n+1:2*n+1]))
def minimum_sum(A, B):
# A는 오름차순으로 정렬
A.sort()
# B는 내림차순으로 정렬
B.sort(reverse=True)
# 두 배열의 요소를 곱한 후 합산
result = sum(a * b for a, b in zip(A, B))
return result
# 결과 출력
print(minimum_sum(A, B))
'Algorithm > 백준' 카테고리의 다른 글
항해99 리부트코스 알고리즘 2주 3일차 백준 18870 좌표 압축 (0) | 2024.07.26 |
---|---|
항해99 리부트코스 알고리즘 2주 3일차 백준 1946 신입 사원 (0) | 2024.07.26 |
백준 코딩테스트 1202 보석 도둑 (0) | 2024.07.25 |
항해99 리부트코스 알고리즘 2주 2일차 백준 9375 패션왕 신해빈 (0) | 2024.07.25 |
항해99 리부트코스 알고리즘 2주 2일차 백준 14235 크리스마스 선물 (0) | 2024.07.25 |