숫자 더하기_프로그래머스_파이썬

숫자 더하기

  • 사전지식
    • len
    • range
    • append
    • sort
    • set
  • len은 입력된 값의 길이를 반환한다.
a = [2,1,3,4,1]
len(a)

​ 5

  • range는 범위를 나타낸다, 뒤에 입력된 값은 포함하지 않는다.
range(5)

​ range(0, 5)

for i in range(5):print(i) #0부터 4까지

​ 0 ​ 1 ​ 2 ​ 3 ​ 4 ​

for i in range(0,5): print(i) #0부터 4까지

​ 5 ​ 4 ​ 3 ​ 2 ​ 1 ​

for i in range(5,0,-1): print(i) #역방향으로도 가능하다.

​ 5 ​ 4 ​ 3 ​ 2 ​ 1 ​

  • append 값을 맨뒤에 추가해주는 기능을 가진다.
a = [2,1,3,4,1]
a.append(3)
a

​ [2, 1, 3, 4, 1, 3]

  • sort 정렬하는 기능을 가진다.
a = [2,1,3,4,1]
a.sort()
a

​ [1, 1, 2, 3, 4]

  • set 중복값을 없애줍니다.
a = [1,2,2,3,4,4,4,2,4,5]
set(a)

​ {1, 2, 3, 4, 5}

def solution(numbers):
    answer = []
    for i in range(len(numbers)):
        for j in range(i+1,len(numbers)):
            if numbers[i] + numbers[j] not in answer:
                answer.append(numbers[i] + numbers[j])
    
    answer.sort()
    return answer
a = [2,1,3,4,1]
solution(a)

​ [2, 3, 4, 5, 6, 7]

프로그래머스 투표 많이 받은 코드

def solution(numbers):
    answer = []
    for i in range(len(numbers)):
        for j in range(i+1, len(numbers)):
            answer.append(numbers[i] + numbers[j])
    return sorted(list(set(answer)))
solution(a)
[2, 3, 4, 5, 6, 7]

Comments