반응형
C++ 벡터를 이용해서 이차원 배열 구현하기
c++에서는 vertor를 이용해서 가변 길이의 배열을 구현할 수 있다.
생각해볼 문제는 배열을 이용해서 구현하는 것과 무슨 차이가 있느냐라는 것이다.
배열을 이용하는 것과 벡터를 이용하는 것의 차이는 무엇인가?
벡터를 사용하는 방법은 무엇인가?
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
/* Enter your code here. Read input from STDIN. Print output to STDOUT */
int n, q, k;
scanf("%d %d", &n, &q);
// create vectors of vectors
vector<vector<int>> v(n); // create vectors which contain n element
for(int i = 0; i < n; i++) {
scanf("%d", &k);
v[i].resize(k);
for(int j = 0; j < k; j++) {
scanf("%d", &v[i][j]);
}
}
int i, j;
for(int l = 0; l < q; l++) {
scanf("%d %d", &i, &j);
printf("%d\n", v[i][j]);
}
return 0;
}
참고
2019/04/04 - [C++] - C++ | #include <bits/stdc++.h> 헤더파일이란 무엇인가?
2019/04/02 - [C++] - C++ 강의 | 조건문 if와 if - else 문 그리고 if - else if -else 문
2019/04/02 - [C] - C/C++ printf 함수에서 실수 소수점 자리와 너비를 지정하는 방법 | 숫자 정렬해서 출력하기, 소수점 아래 자리수 지정하기
2019/04/01 - [C++] - C++ 강의 | 기본 데이터 타입과 형식지정자 그리고 C++의 출력과 입력 scanf와 printf
반응형
댓글