Ввод множества c++ [закрыт]

204
04 декабря 2019, 20:40

Есть задача: "Во входной строке записана последовательность чисел через пробел. Для каждого числа выведите слово YES (в отдельной строке), если это число ранее встречалось в последовательности или NO, если не встречалось" Вопрос: Вводится неопределенное кол-во чисел, а как ввести это неопределенное кол-во чисел(вводить нужно в множество "set") Буду благодарен)

Answer 1

Если вы читаете из терминала, то можно сделать, как сказал Harry. Читаем строку, превращаем её в поток и читаем. Реализация:

#include <iostream>
#include <string>
#include <set>
#include <sstream>
using namespace std;
int main() {
    string s;
    set <int> S;
    int n = 0;
    getline(cin, s);
    istringstream i(s);
    while (i >> n)
        if (S.count(n) == 0) {
            cout << "NO\n";
            S.insert(n);
        }
        else
            cout << "YES\n";
    return 0;
}

Для файла можно попробовать читать до конца файла. Если в файле не 1 строка, то использовать первый метод, если же одна, то можно так:

#include <fstream>
#include <iostream>
#include <string>
#include <set>
using namespace std;
int main() {
    set <int> S;
    int n;
    ifstream i("input.txt");
    while (i >> n)
        if (S.count(n) == 0) {
            cout << "NO\n";
            S.insert(n);
        }
        else
            cout << "YES\n";
    return 0;
}
READ ALSO
C++ cin.clear(); cin.ignore возвращают 0

C++ cin.clear(); cin.ignore возвращают 0

Доброй ночиВопрос от новичка

158
Права администратора в Qt

Права администратора в Qt

Есть приложение на Qt, и обычно располагается в Program FilesВ некоторых случаях, когда запускается программа, она запрашивает/не запрашивает права...

139
Как добавить текст в TextView через Loader?

Как добавить текст в TextView через Loader?

Сейчас изучаю потоки в андроид, и мое задание - сделать счетчик, который добавляет числа от 0 до 9 в TextView через LoaderПонятно, что Loader нужен для...

234
Нужна помощь с заданием [закрыт]

Нужна помощь с заданием [закрыт]

В логе службы есть N записей, в которых указано, что в i-й момент времени Васина программа потребляла Ai мегабайт памятиЕсли в какой-то момент...

135