문제
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
코드
더보기
#include <string>
#include <vector>
using namespace std;
vector<vector<int>> solution(vector<vector<int>> arr1, vector<vector<int>> arr2) {
vector<vector<int>> answer;
for (int i = 0; i < arr1.size(); i++)
{
vector<int> temp;
for (int j = 0; j < arr1[i].size(); j++)
{
temp.push_back(arr1[i][j] + arr2[i][j]);
}
answer.push_back(temp);
}
return answer;
}
코드 해설
먼저 arr1과 arr2의 크기 사이즈는 동일하다. 그렇기에 하나의 배열의 사이즈를 for문의 조건식에 arr1의 사이즈를 해둔다.
arr1의 사이즈만큼 순회하면서, arr1의 i번째 값의 최대 사이즈를 순회하며, arr1과 arr2의 값을 서로 더해준다. 그리고 벡터인 temp에 값을 넣어준다.
그리고 answer에 temp의 값을 넣어준다.
의외로 간단한데 행렬이라는 걸 고려하는걸 까먹어서 오류 여러개를 뱉어냈다 ㅎ
'코딩 > 코드 문제 묶음' 카테고리의 다른 글
| [프로그래머스] 최소직사각형 (2) | 2025.01.17 |
|---|---|
| [프로그래머스] 최대공약수와 최소공배수 (0) | 2025.01.11 |
| [프로그래머스] 문자열 다루기 기본 (0) | 2025.01.08 |
| [프로그래머스] 문자열 내림차순 (1) | 2025.01.06 |
| [프로그래머스] 약수의 개수와 덧셈 (2) | 2025.01.04 |