Написал алгоритм который должен сортировать числа в порядке возрастания. Ввод через 1 строку. В строке входный чисел их не более 100000. Работает, но с ошибкой. Не проходит 1 тест. Входные данные вводяться в 1 строку, числа отделяються одним пробелом. В данном случае правильно работает только при введении чисел между которыми только один пробел, но я еще делал, чтобы оно работало несмотря на количество пробелов, но всёравно не проходит тест тот самый тест, который и не проходил, неправильный результат. Делал еще и с массивом, ситуация такая же.
#include <iostream>
#include <vector>
#include <string>
#include <cmath>
#include <algorithm>
using namespace std;
int main() {
string n;
long int k = 0;
long int symbolcount;
vector<int> vec;
getline(cin, n);
while (n.length())
{
vec.push_back(atoi(n.c_str()));
symbolcount = log10(vec[k]) + 2;
n.erase(0, symbolcount);
k++;
}
sort(vec.begin(), vec.end());
for (int i = 0; i < vec.size(); i++)
{
printf("%d ", vec[i]);
}
}
Можете использовать istringstream
. Просто инициализируете его Вашей строкой, а потом используйте его как cin
для извличения чисел.
#include <iostream>
#include <sstream>
#include <vector>
#include <string>
#include <algorithm>
// #include <iterator>
using namespace std;
int main()
{
string input;
getline(cin, input);
istringstream stream(input);
vector<int> vec;
// Заполнение вектора
int temp;
while (stream >> temp)
{
vec.push_back(temp);
}
// Или так
// copy(istream_iterator<int>(stream), istream_iterator<int>(), back_inserter(vec));
sort(vec.begin(), vec.end());
for (int i = 0; i < vec.size(); i++)
{
cout << vec[i] << '\t';
}
// Или так
// copy(vec.begin(), vec.end(), ostream_iterator<int>(cout, "\t"));
return 0;
}
Пытаюсь я считать число из файла и сразу же вывести его в консоль, а выводиться неинициализированный участок памяти, а все данные из файла...
Реализую поиск минимума в очереди, но столкнулся с проблемой, что на больших массивах слишком долго работаетПодскажите, пожалуйста, можно...
Расскажите пожалуйста, что такое ошибки времени исполнения? Когда они возникают? Если можно, то хотелось бы посмотреть на примерах кода на C/C++И...