Today
Total
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
관리 메뉴

기억은 짧고 기록은 길다

[프로그래머스/Programmers] 두 개 뽑아서 더하기 - Python 본문

CodingTest/programmers

[프로그래머스/Programmers] 두 개 뽑아서 더하기 - Python

ukunV 2021. 8. 13. 13:39

Link

 

코딩테스트 연습 - 두 개 뽑아서 더하기

정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한

programmers.co.kr

 

Solution

해당 문제는 제한사항이 작기 때문에 이중 for문과 combinations를 모두 사용해도 문제가 없다고 판단하였다.

nums의 길이는 2 이상 100 이하입니다.
nums의 모든 수는 0 이상 100이하입니다.

 

def solution(nums):

    return sorted(set([nums[i] + nums[j] for i in range(len(nums)) for j in range(i+1, len(nums))]))
    
    # sorted(): list 반환
from itertools import combinations

def solution(nums):
    sums = list(combinations(nums, 2))

    return sorted(set([sum(i) for i in sums])) # sorted(): list 반환
🔑 key point: Limits
📌 Tip: set(), itertools.combinations()
Comments