Есть задача: "Во входной строке записана последовательность чисел через пробел. Для каждого числа выведите слово YES (в отдельной строке), если это число ранее встречалось в последовательности или NO, если не встречалось" Вопрос: Вводится неопределенное кол-во чисел, а как ввести это неопределенное кол-во чисел(вводить нужно в множество "set") Буду благодарен)
Если вы читаете из терминала, то можно сделать, как сказал 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;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть приложение на Qt, и обычно располагается в Program FilesВ некоторых случаях, когда запускается программа, она запрашивает/не запрашивает права...
Сейчас изучаю потоки в андроид, и мое задание - сделать счетчик, который добавляет числа от 0 до 9 в TextView через LoaderПонятно, что Loader нужен для...
В логе службы есть N записей, в которых указано, что в i-й момент времени Васина программа потребляла Ai мегабайт памятиЕсли в какой-то момент...