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

cosmos·2021년 3월 23일
3
post-thumbnail

문제📖

풀이🙏

  • 정수 배열 numbers가 주어진다.
  • numbers에서 서로 다른 인덱스에 있는 두개의 수를 뽑아 더해서 만들수 있는 모든 수를 배열에 오름차순으로 담아 return하도록 solution함수를 완성하라.
    -> python itertools module의 combinations 함수를 사용하면 해당 list내의 모든 요소의 경우의 수를 구할 수 있다.

코드💻

# programmers, phase1 : 두 개 뽑아서 더하기, python
from itertools import combinations

def solution(numbers):
    answer = set()
    
    for i in list(combinations(numbers,2)):
        answer.add(sum(i))
        
    return sorted(answer)

최적코드

# sean, 최성우,... 님 코드 참고
def solution(numbers):
    answer = []
    
    for i in range(len(numbers)):
        for j in range(i+1, len(numbers)):
            answer.append(numbers[i] + numbers[j])
            
    return sorted(list(set(answer)))

결과😎


출처 && 깃허브📝

https://programmers.co.kr/learn/courses/30/lessons/68644
github

0개의 댓글