Python/알고리즘

[파이썬 알고리즘 인터뷰] 10. 배열 파티션 I

AI 꿈나무 2021. 2. 12. 17:06
반응형

 

 이 포스팅은 파이썬 알고리즘 인터뷰를 공부하면서 정리한 내용입니다.

 

 출처 : 파이썬 알고리즘 인터뷰

 코드 출처 : 파이썬 알고리즘 인터뷰 깃허브

 


10. 배열 파티션 I

리트코드 561번 문제입니다.

leetcode.com/problems/array-partition-i/

 

 

풀이

 nums를 정렬하고 for문으로 짝수 index를 가져옵니다.

 해당 index와 다음 index의 값중 최소값을 results에 추가한 뒤

 모든 값을 더해서 return 합니다.

 

def arrayPairSum(self, nums):
    nums.sort()
    results = []
    for i in range(0,len(nums),2):
        results.append(min(nums[i],nums[i+1]))
    return sum(results)

 

책에 나와있는 풀이

 책에서는 심플하게 한줄 풀이가 있었습니다.

 nums를 정렬한 뒤에 짝수 번째 값을 모두 더해 return 합니다.

 

def arrayPairSum(self, nums):
    return sum(sorted(nums)[::2])
반응형