본문 바로가기
코테 준비/프로그래머스

[프로그래머스] Level 1. 행렬의 덧셈

by 귤이두번 2022. 1. 12.

def solution(arr1, arr2):
    answer = []

    for i, lst in enumerate(arr1):  # arr1 리스트의 순서: i, 내용: lst  ex) 0 [1, 2]           
        new = [x+y for x, y in zip(lst, arr2[i])]   # 각 요소들의 값 더하기
        answer.append(new)  # 정답 리스트에 추가

    return answer

 

1. enumerate 함수

- 순서가 있는 자료형(리스트, 튜플, 문자열)을 입력으로 받아 인덱스 값을 포함하는 enumerate 객체 리턴

- arr1을 돌면서 인덱스와 값을 얻을 수 있다

- 같은 인덱스에 있는 리스트끼리 더하는 것이므로 arr1에서 얻은 인덱스 값을 활용하였다

 

2. 두 리스트 각 요소들의 값 더하기 

    1) list comprehension

[list1[i] + list2[i] for i in range(len(list1))]

    2) zip 함수

[x+y for x,y in zip(list1, list2)]

댓글