как заполнить с клавиатуры стринговый set контейнер размером 9 элементов?
Как можно заполнить контейнер set типа string размером 9 элементов? после посчитать длину каждой строки и удалить самую маленькую
Ответы (1 шт):
Автор решения: Mikhailo
→ Ссылка
А вы считайте сразу длину - при внесении в set. Тогда строка с минимальной длиной - первая.
int main() {
auto comp = [](const string & a, const string & b) {
if (a.size() < b.size()) return true;
if (a.size() > b.size()) return false;
return a < b;
};
set<string, decltype(comp)> S(comp);
for (int i = 0; i < 9; ++i) {
string s;
getline(cin, s);
S.insert(s);
}
cout << "----\n";
for (auto s : S) cout << s << "\n";
cout << "----\n";
S.erase(S.begin());
for (auto s : S) cout << s << "\n";
cout << "----\n";
}