1차원 벡터에 n개를 푸시 후 2차원 벡터에 1차원 벡터를 푸시하는 방식이다.
이는 개인적으로 항상 사용하던 방식인 vectorv[100] 과 같이 벡터 배열을 만드는 것보다 메모리차원에서 효율적인 방식이다.
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<vector<int>>V;
vector<int>innerV;
int n;
cin >> n;
for (int i = 0; i < n; i++) innerV.push_back(0);
for (int i = 0; i < n; i++) V.push_back(innerV);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cout << V[i][j];
}
cout << endl;
}
}
/*
n=2일때 출력결과
00
00
n=3일때 출력결과
000
000
000
*/