프로그래머스 level2 _ 최솟값 만들기 [Python]
처음에는 가능한 모든 조합을 다 계산해서 최솟값을 찾으려고 하였다. 그러나 A,B로 부터 [(1,5),(2,6),(3,7)], [(1,6),(2,5),(3,7)], [(1,7),(2,5),(3,6)], ... 의 가능한 조합 전체를 뽑아내는 코드를 구현하지 못했다. 또 구현한다고 하더라도 A,B의 크기가 1,000이하의 자연수 이기 때문에 너무 오래걸릴 것이다. 정답 코드는 아래와 같다. def solution(A,B): answer = 0 A.sort(reverse = True) B.sort() for i in range(len(A)): answer += (A[i]*B[i]) return answer A,B 중 하나는 역순으로, 나머지 하나는 순서대로 정렬한 후 인덱스 순서대로 곱한 후 더하면 그것이 ..
2022. 12. 31.