#include <iostream>
#include <string>
#include <vector>
using namespace std;
string mat1(string s) {
string s2 = "";
int i = 0;
while (s[i] != ' ') {
s2 += s[i];
i++;
}
return s2;
}
string mat2(string s) {
string s2 = "";
int i = 0;
while (s[i+1] != '>') {
i++;
}
while (s[i] == ' ') {
i++;
}
for (;i<s.size();i++) {
s2 += s[i];
}
return s2;
}
int main() {
int m;
cin >> m;
string s,s1,s2;
vector <string> A,B(m);
for (int i=0;i<m;++i) {
cin.ignore();
getline(cin,s);
A[i] = mat1(s);
B[i] = mat2(s);
}
getline(cin,s1);
getline(cin,s2);
}
Есть программа, ошибку выдает после прохождения функции mat1, при присваивании A[i] значение функции.
Вектор пустой. Добавлять надо иначе -
A.push_back(mat1(s));
Ну, или изначально чтобы было достаточно элементов в векторе -
vector <string> A(m),B(m);
Только вот mat2
у вас работать не будет... Если в строке нет символа '>' - куда вы попадете в первом же цикле?...
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть простейший алгоритм на c++, который заполняет и выводит двухмерный динамический массив числами от 1 до n*m, но не работает с некоторыми...
Как в конструкторе класса инициализировать поле класса, являющееся объектом класса и созданное на стеке? Следующий код вызывает ошибку
Реализовал алгоритм Флойда, но задался вопросом,как сделать помимо вывода матрицы кратчайших путей, ещё и вывод матрицы расстояний, который...