행렬의 덧셈

NJW·2021년 8월 15일
0

코테

목록 보기
43/170

행렬의 열과 크기가 같을 때, 같은 열과 행을 더한 행렬을 리턴하는 문제이다.
두 행렬과 리턴하는 행렬 모두 2차원으로 주어진다.

2차원 행렬에 삽입은 어떻게 할까?가 제일 큰 문제였다. 검색해보니 2차원 행렬은 1차원 벡터의 합이라는 정보를 얻었다. 그래서 행(i)을 중심으로 벡터를 만들어 주고 1차원 벡터에다가 더한 값을 넣어준 뒤 합해서 2차원 벡터를 만들었다.

#include <string>
#include <vector>

using namespace std;

vector<vector<int>> solution(vector<vector<int>> arr1, vector<vector<int>> arr2) {
    //1차원 벡터를 만들어서 2차원 벡터에 넣어주는 방식으로(가로)
    
    vector<vector<int>> answer;
    
   for(int i = 0; i < arr1.size(); i++){
       vector<int> v1;
       
       for(int j = 0; j < arr1[0].size(); j++){
           //arr1[0].size()열(가로의 길이) 사이즈로, v1에 넣어준다.
           v1.push_back(arr1[i][j] + arr2[i][j]);
       }
       answer.push_back(v1);
       
   }
    return answer;
}
profile
https://jiwonna52.tistory.com/

0개의 댓글