알고리즘(백준, 프로그래머스)/[프로그래머스] Lv1

[프로그래머스] Lv1. 행렬의 덧셈 - 파이썬(Python)

마법사 코딩공주 2023. 5. 9. 22:14
728x90
반응형

문제링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12950

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

📝 문제설명

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다.
2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.

🔗 제한 사항

- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.

🔗입출력예


👉 문제풀이

  • answer에 [[]]을 대로 넣어두면 에러 발생(IndexError: list assignment index out of range)
  • 이는 행렬의 덧셈을 위해 인덱스를 할당하기 위 리스트 범위를 정해줘야 되서 arr1를 넣음
  • 2차원 행렬이기 때문에 i, j를 통해 2차원, 1차원으로 접근해야해서 이중 for문을 사용
  • 입출력 예 1첫번째 기준으로 i의 출력값은 0, 1이며 j의 출력값은 0, 1, 0, 1
  • answer[0][0] = arr1[0][0] + arr2[0][0]의 결과가 나
def solution(arr1, arr2):
    answer = arr1
    
    for i in range(len(arr1)):
        for j in range(len(arr1[i])):
            answer[i][j] = arr1[i][j] + arr2[i][j]

    return answer
728x90
반응형