Problem Solving/Programmers
<Level 1> 두 개 뽑아서 더하기 with 파이썬
harry_yoon
2021. 6. 3. 07:27

문제 설명
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
제한사항
- numbers의 길이는 2 이상 100 이하입니다.
- numbers의 모든 수는 0 이상 100 이하입니다.
def solution(numbers):
answer = []
answer_set = set()
for i in range(len(numbers) - 1):
for j in range(i+1, len(numbers)):
answer_set.add(numbers[i] + numbers[j])
answer = list(answer_set)
answer.sort()
return answer
- 첫 번째 for문은 리스트의 처음부터 마지막 바로 직전의 원소까지 돌고 두 번째 for 문은 i+1 부터 끝까지 돌게한다. 이렇게 하면 리스트의 각 원소 둘씩 더할 수 있다.
- 이들을 set에 담아서 중복을 제거하였고, list로 만든 후 정렬시켜주었다.
참고
https://programmers.co.kr/learn/courses/30/lessons/68644