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

문제

행렬의 덧셈  

 

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

 

제한 조건

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

 

코드

#include <vector>

using namespace std;

vector<vector<int>> solution(vector<vector<int>> arr1, vector<vector<int>> arr2) 
{
    vector<vector<int>> answer(arr1.size());
    
    for(int i = 0; i < arr1.size(); i++)
        for(int j = 0 ; j < arr1[0].size(); j++)
            answer[i].push_back(arr1[i][j] + arr2[i][j]);
    
    return answer;
}

 

나의 생각

vector의 초기화는 다음과 같다. 

vector<int> v(5,3); //크기 : 5, 초기 값 : 3
vector<int> v(5); //크기 : 5

응용해서 vector를 원소로 갖는 vector의 초기화는 다음과 같다.

vector<vector<int>> v(5, vector<int>(5, 1)); // vector<int>(5, 1)를 원소로 갖는 크기 5의 vector