Search

[STL] 2차원 벡터와 맵(해시테이블)

생성일
2023/03/13 11:39
태그
C++

[STL] 2차원 벡터와 맵(해시테이블)

int main() { int n, m; cin >> n >> m; vector<vector<int>> v(n, vector<int>(m)); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> v[i][j]; } } for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cout << v[i][j] << " "; } cout << '\n'; } }
C++
복사

v.resize(n, vector<int>(m));

int main() { int n, m; cin >> n >> m; v.resize(n, vector<int>(m)); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> v[i][j]; } } for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cout << v[i][j] << " "; } cout << '\n'; } }
C++
복사

matrix_t 으로 선언할 경우

typedef vector<vector<int>> matrix_t; matrix_t v; int main() { int n, m; cin >> n >> m; v.resize(n, vector<int>(m)); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cin >> v[i][j]; } } for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { cout << v[i][j] << " "; } cout << '\n'; } }
C++
복사

2차원 벡터의 사이즈

vector<vector<int>> arr = { {1, 2, 3}, {4, 5, 6} }; // 행 (row) int row_count = arr.size(); // result: 2 // 열 (column) int col_count = arr[0].size(); // result: 3
C++
복사

HashMap

#include <map> #include <utility> int main() { map<int, string> mymap; int n; cin >> n; for (int i = 0; i < n; i++) { int num; cin >> num; string str; cin >> str; mymap[num] = str; } for (auto item: map) { cout << item.first << ": " << item.second << '\n'; } }
C++
복사