L2 : 최솟값 만들기 Python

jhyunn·2023년 1월 12일
0

Programmers

목록 보기
19/69

L2 : 최솟값 만들기 Python

https://school.programmers.co.kr/learn/courses/30/lessons/12941

def solution(A,B):
    sum = 0
    A = sorted(A)
    B = sorted(B, reverse=True)
    
    for i in range(len(A)):
        sum += A[i] * B[i]
        
    return sum

A 리스트에서는 최댓값, B리스트에는 최솟값끼리 곱해나가면 된다.
최적화를 위해 미리 정렬을 한 뒤에 진행하면 좋다.

import numpy as np
def solution(A,B):
    return int(np.dot(np.array(sorted(A)), np.array(sorted(B, reverse=True)).T))

numpy의 dot() 행렬곱 연산을 활용해도 된다.

profile
https://github.com/Sungjeonghyun

0개의 댓글