[Python] 프로그래머스 최솟값만들기 파이썬

hyewon9913·2024년 5월 30일
0

코딩테스트(python)

목록 보기
22/46

최솟값만들기는 길이가 같은 두배열의 모든 원소를 곱해서 나올 수있는 최솟값을 구하는 문제이다.

최솟값이라는 말때문에 모든 경우의 수를 구해야하나하고 잠깐 생각하느라 아찔해졌지만 결국에는 두 배열을 곱해서 가장 작은 수가 되게 한다는 것은
(A배열의 작은수 x B배열의 큰수) 를 곱해준걸 더해주면 되기때문에
A배열은 오름차순정렬 B배열은 내림차순 정렬해준 후 둘을 곱해주었다

def solution(A,B):
    answer = 0
    l = len(A)
    A.sort()
    B.sort(reverse = True)
    
    for i in range(l):
        answer+=A[i]*B[i]
    
    return answer
profile
차근차근 굴러가는 코딩일지

0개의 댓글