#include <iostream>
#include <unordered_set>
void print(const auto& set)
{
for (const auto& elem : set)
std::cout << elem << ' ';
std::cout << '\n';
}
int main()
{
std::unordered_set<int> mySet{2, 7, 1, 8, 2, 8}; // creates a set of ints
print(mySet);
mySet.insert(5); // puts an element 5 in the set
print(mySet);
if (auto iter = mySet.find(5); iter != mySet.end())
mySet.erase(iter); // removes an element pointed to by iter
print(mySet);
mySet.erase(7); // removes an element 7
print(mySet);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dW5vcmRlcmVkX3NldD4KIAp2b2lkIHByaW50KGNvbnN0IGF1dG8mIHNldCkKewogICAgZm9yIChjb25zdCBhdXRvJiBlbGVtIDogc2V0KQogICAgICAgIHN0ZDo6Y291dCA8PCBlbGVtIDw8ICcgJzsKICAgIHN0ZDo6Y291dCA8PCAnXG4nOwp9CiAKaW50IG1haW4oKQp7CiAgICBzdGQ6OnVub3JkZXJlZF9zZXQ8aW50PiBteVNldHsyLCA3LCAxLCA4LCAyLCA4fTsgLy8gY3JlYXRlcyBhIHNldCBvZiBpbnRzCiAgICBwcmludChteVNldCk7CiAKICAgIG15U2V0Lmluc2VydCg1KTsgLy8gcHV0cyBhbiBlbGVtZW50IDUgaW4gdGhlIHNldAogICAgcHJpbnQobXlTZXQpOwogCiAgICBpZiAoYXV0byBpdGVyID0gbXlTZXQuZmluZCg1KTsgaXRlciAhPSBteVNldC5lbmQoKSkKICAgICAgICBteVNldC5lcmFzZShpdGVyKTsgLy8gcmVtb3ZlcyBhbiBlbGVtZW50IHBvaW50ZWQgdG8gYnkgaXRlcgogICAgcHJpbnQobXlTZXQpOwogCiAgICBteVNldC5lcmFzZSg3KTsgLy8gcmVtb3ZlcyBhbiBlbGVtZW50IDcKICAgIHByaW50KG15U2V0KTsKfQ==