Pink Rose Flower

Python/Beakjoon

1026: 보물

hyunjoo 2021. 8. 7. 16:26

1026번: 보물 (acmicpc.net)

 

1026번: 보물

첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거

www.acmicpc.net

 

>>

B를 새로 정렬하면 안된다고는 하지만 결국 합만 출력하면 되기 때문에

A와B 둘 중 하나는 오름차순, 하나는 내림차순으로 정렬한 다음, 같은 인덱스끼리 곱하여 더하면 합의 최소값을 구할 수 있다.

>>

A를 내림차순으로 정렬하기위해 reversed(A)로 정렬해본 결과,

리스트로 사용하기 위해서는 list(reversed(A)) 리스트로 다시 변환해줘야 했다.

 

 

N = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))

A = sorted(A,reverse=True)
B = sorted(B)
S = 0

for i in range(N):
    S+=A[i]*B[i]

print(S)

 

반응형

'Python > Beakjoon' 카테고리의 다른 글

5543: 상근날드  (0) 2021.08.07
2953번: 나는 요리사다  (0) 2021.08.07
6603번 : 로또  (0) 2021.08.07
1010번: 다리놓기  (0) 2021.08.06
3052번: 나머지  (0) 2021.08.04