Почему все элементы выводтся в столбец. Если мы сначала в i кладем vector. А во вложенном цикле j это int;
int main(){
vector< vector<int>> v;
int n ;
cin >> n;
for(int i = 0; i < n; i++)
for(int j = 0; j < n ; j++)
v.emplace_back(vector<int>()), v[v.size() - 1].emplace_back(j);
for (auto i:v){
for(auto j:i)
cout << j << " ";
cout << "\n";
}
return 0;
}
Вывод при n = 5:
0
1
2
3
4
0
1
2
3
4
0
1
2
3
4
0
1
2
3
4
0
1
2
3
4
Потому что вместо того, чтобы создать n векторов с n значениями, вы создали n х n векторов с одним значением. Поэтому код вывода и показывает n х n векторов с одним элементом.
Перенесите создание внешнего вектора в первый цикл
#include <iostream>
#include <vector>
using namespace std;
int main(){
vector<vector<int>> v;
int n = 2;
for(int i = 0; i < n; i++){
v.emplace_back(vector<int>());
for(int j = 0; j < n ; j++){
v[v.size() - 1].emplace_back(j);
}
}
for (auto i:v){
for(auto j:i)
cout << j << " ";
cout << "\n";
}
return 0;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте! Я начинающий программист и недавно использую QtНе могу разобраться с компиляцией приложения на C++ с использованием Qt
Задание:Структура с именем TRAIN поля: -название пункта назначения; -номер поезда; -время отправления Способ обработки – вывод на дисплей результата...
Есть программа, которая в цикле сравнивает строки, всё в ней работает, но в итоге превышается тайм лимит на 0,001 - 0,007 секундыРешил с каждой итерацией...