인천의 자유인

[Python] 두 개 뽑아서 더하기 - 프로그래머스(Lv.1) 본문

Python/Python코딩테스트

[Python] 두 개 뽑아서 더하기 - 프로그래머스(Lv.1)

Youngook 2024. 6. 10. 08:42
728x90
반응형

반응형

 

 

 

나의 문제 풀이

def solution(numbers):
    lst = []
    for i in range(len(numbers)):
        for j in range(len(numbers)):
            if i == j:
                continue
            lst.append(numbers[i] + numbers[j])
    return sorted(list(set(lst)))

 

먼저 빈 리스트 lst를 생성합니다.

그 다음에 numbers리스트의 값들을 각각 더하는 작업을 합니다. 다만 자기 자신을 더하는 일이 없도록 i와 j가 같을 경우에는 continue를 실행합니다. 그리고 같지 않다면 lst에 append해서 요소를 추가합니다.

그것이 다 끝나면 set로 중복을 제거한 뒤 다시 리스트로 만듭니다. 그러나 sorted를 한 이유는 애초에 set가 순서가 없는 자료형이기 때문에 오류가 날 수 있기 때문입니다. 그러므로 sorted를 통해 문제를 해결할 수 있습니다.

728x90
반응형