Algorithm/C++ - 프로그래머스

프로그래머스 - 행렬의 덧셈 C++

ㅇㅇ잉 2021. 2. 17. 19:31

문제 다 풀어놓고서 이중vector에 능숙하지 않음을 확인한 문제.. 허허 이제 정확히 알았다.

vector<vector<int>> v;

이런 형태는 이차원 배열이랑 비슷하지만 구조가 좀 다른 것 같다.

vector안에 vector가 들어가 있는 형태.

그래서 15줄에 저렇게 따로 vector를 하나 만들어주고 거기에 덧셈을 받아서,

vector형태로 push_back시켜야 한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <string>
#include <vector>
#include <iostream>
using namespace std;
 
vector<vector<int>> solution(vector<vector<int>> arr1, vector<vector<int>> arr2) {
    vector<vector<int>> answer;
    
    int row=arr1.size();
    int cul=arr1[0].size();
    
    for(int i=0;i<row;i++){ //row 행
        vector<int> v;
        for(int j=0;j<cul;j++){ //cul 열
            v.push_back(arr1[i][j]+arr2[i][j]);
        }
        answer.push_back(v);
    }
    
    return answer;
}
cs