최솟값 만들기

yongju·2022년 11월 8일
0

Programmers

목록 보기
14/23
post-thumbnail

프로그래머스 레벨2 [정답율 74%]

❓문제

❗문제 정리
사용한 파라미터:
A, B(list/int) : 받은 인수
sum(int) : 덧셈 결과 저장

풀이방법 :
A를 오름차순으로, B를 내림차순으로 정렬하여 각 인덱스별로 곱하고 누적시키면 최소값을 얻을 수 있음.

📑코드

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

📝코드 설명

    A.sort()
    B.sort(reverse=True)

A를 오름차순으로, B를 내림차순으로 저장

    sum=0
    for i in range(len(A)):
        sum+=A[i]*B[i]
    return sum

각 인덱스 별로 곱해서 더해주기

🎖제출 결과

💡insight
아이디어를 얻는게 어려웠다
한줄 코드가 가능함.

return sum(a*b) for a, b in zip(A.sort(), B.sort(reverse=True))
profile
AI dev

0개의 댓글