Coding/Step By Step

Baekjoon Training / 2차원 vector / #2738

빈그레 2023. 2. 7. 21:59

 

 


#2738

 

 

 

 

 

2차원 vector

 

	vector < vector < int > > v(10.vector<int>(10,0));

 

2차원 vector는 위와 같이 vector에 vector 자료형을 담는 느낌으로 생성한다.

위 코드는 10개의 원소를 가지고 있고, 각 원소는 10개의 원소를 갖고 있고 이 원소들은 0으로 초기화된다.

즉, v[0][0] ~ v[10][10] 모두 0으로 초기화되었음을 의미한다

 

 

 

연속된 정수 받기

 

	int n, m;
	scanf("%d %d", &n, &m);

scanf로 공백을 기준으로 연속으로 정수를 입력 받을 수 있다.

cin으로 연속된 정수를 받기 위해서는 enter를 통해서 받거나 for문을 통해 연속적으로 값을 받아야한다.

 

 

 

#define _CRT_SECURE_NO_WARNINGS

#include <iostream>
#include<vector>
using namespace std;

int main() {
	int n, m;
	scanf("%d %d", &n, &m); //scanf로 연속된 정수 받기

	//matrix 생성
	vector<vector<int>> A(n,vector<int>(m));   //n행 m열 A matrix
	vector<vector<int>> B(n, vector<int>(m));  //n행 m열 B matrix


	//A값 넣기
	for (int i = 0;i < n;i++) {
		for (int j = 0;j < m;j++) {
			scanf("%d", &A[i][j]);
		}
	}

	//B값 넣기
	for (int i = 0;i < n;i++) {
		for (int j = 0;j < m;j++) {
			scanf("%d", &B[i][j]);
		}
	}

	for (int i = 0;i < n;i++) {
		for (int j = 0;j < m;j++) {
			cout << A[i][j] + B[i][j]<<" ";
		}
		cout << endl;
	}

	return 0;
}