본문 바로가기

알고리즘/Lv. 1

프로그래머스 68644 두 개 뽑아서 더하기 파이썬 풀이

728x90

난이도 : Lv. 1

풀이일 : 2506172

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr


문제


코드

def solution(numbers):
    answer = set()
    for i in range(len(numbers) - 1):
        for j in range(i + 1, len(numbers)):
            answer.add(numbers[i] + numbers[j])

    return sorted(list(answer))
  • answer는 중복을 허용하지 않는 set으로 초기화한다.
  • i 인덱스는 처음부터 맨 마지막 하나 전 요소까지, j 인덱스는 i + 1부터 맨 마지막 요소까지 반복한다.
  • number의 i 인덱스 값과 j 인덱스 값을 더해 answer에 추가한다.
  • 리스트로 변환한 answer를 오름차순으로 정렬해 리턴한다.

실행 결과


느낀점

  • 기말고사 때문에 쭉 쉬운 문제만 풀어왔는데, 이제 다시 어려운 문제들도 도전해봐야지