본문 바로가기

두두의 알고리즘/문제

[순열과 조합] 프로그래머스 L1 '두 개 뽑아서 더하기' (Python)

728x90

<문제 링크>

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

 

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

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

programmers.co.kr


<문제 풀이>

1. combinations을 이용해서 조합 만들기

2. 중복되는 문자열 제거

3. 숫자를 더한 값 출력

 

<코드>

from itertools import combinations, permutations
def solution(numbers):
    s = set()
    num = set(combinations(numbers,2))
    
    for i in num:
        s.add(sum(i))

    return sorted(list(s))

 

<고쳐야 할 점>

  • 문제 잘 읽기
  • 오름차순으로 출력하기
  • 복습 알고리즘