반응형
으아아아 내일 코딩테스트.....
문제 설명
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
제한사항
- numbers의 길이는 2 이상 100 이하입니다.
- numbers의 모든 수는 0 이상 100 이하입니다.
입출력 예
numbers | result |
[2,1,3,4,1] | [2,3,4,5,6,7] |
[5,0,2,7] | [2,5,7,9,12] |
def solution(numbers):
result=[]
for i in range(len(numbers)-1):
for j in range(len(numbers)):
if i != j:
result.append(numbers[i]+numbers[j])
result = list(set(result))
return result
필자는 직관적으로 누가봐도 알아볼 수 있도록 풀고 싶다... 더 열심히해야지.... 선택정렬으로 모두 값을 더해주고 set으로 중복된값을 지운뒤 다시 list로 바꿔서 출력했다.! 끝! 선택정렬을 사용했으니 시간복잡도는 O(n^2)이 될것이당.!
반응형
'혼자 공부하는 것들 > 알고리즘' 카테고리의 다른 글
에라토스테네스의 체 (0) | 2021.09.02 |
---|---|
[프로그래머스] 숫자 문자열과 영단어 (2021 카카오 채용연계형 인턴십) (0) | 2021.08.28 |
[프로그래머스][Python] 나누어 떨어지는 숫자 배열 (0) | 2021.02.21 |
[백준] 2908번 java 상수 (0) | 2020.12.08 |
[백준] 2775번 java 부녀회장이될테야!! (0) | 2020.12.06 |
댓글