Vector C++. Ввод вектора с клавиатуры

815
02 февраля 2017, 01:40

Есть код:

int g[500][500], n;
cin >> n;
for(int i=0; i<n; i++)
  for(int j=0; j<n; j++)
       cin >> g[i][j];

Как мне заменить статический массив вектором?

Т.е. vector <vector <int>> g(n);

Как осуществить ввод данных из клавиатуры в вектор (двумерный)?

P.S.Это для графов.

Answer 1

Вместо int g[500][500] -

vector<vector<int>> g(500,vector<int>(500));

Но лучше так:

int main()
{
    int n;
    cin >> n;
    vector<vector<int>> g(n,vector<int>(n));
    ...
}
Answer 2
cin >> n;
vector <vector <int>> g(n, vector<int>(n));

А дальше без изменений.

Answer 3

// А просто так, например:

vector < int > g;

int i, j, n, x;

cin >> n;

for(int i=0; i<n; i++) {
    for(int j=0; j<n; j++) {
    cin >> x;
    g.push_back(x);
    }
}
READ ALSO
Кроссплатформенная работа с USB

Кроссплатформенная работа с USB

Исходно есть Linux и Windows приложение основанные на Qt, задача заключается в том чтобы с помощью этих приложений в момент подключения USB накопителя...

351
OpenVPN как dll для использования в проекте

OpenVPN как dll для использования в проекте

Можно каким-то образом подключить openvpn к своему проекту, как библиотеку и как его в дальнейшем использовать?

343
recv принимает сообщения без пробела

recv принимает сообщения без пробела

Приветствую, проблема с recvПринимает сообщения слитно в чем ошибка, как исправить? Если заранее определить как здесь, все корректно отправляется...

379