Как смотреть вперед на несколько шагов при чтении файлов в Stack Overflow

У меня есть входной файл, который состоит из нескольких целых чисел, разделенных пробелами или символами новой строки.
EX:

7\n
2 2\n
3 4\n
\n
8\n
3 1\n
5 6\n
7 7\n
\n
3\n
1 2\n
3 4\n

…. и так далее.

Мне нужно решить, сколько разных наборов ввода у меня на основе этого входного файла. Я не могу этого сделать. Какие-нибудь советы?

2

Решение

Читайте файл построчно. После каждого чтения проверяйте следующий символ в потоке. Если это '\n' (или EOF), вы в конце набора ввода.

std::string line;
std::ifstream stream;
size_t sets = 0;

while (std::getline(stream, line)) {

// do something with line

int next = stream.get()
if (next == '\n' || next == EOF)
++sets;
else
stream.putback(next);
}
5

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector