Cod sursa(job #2751795)

Utilizator almar.fetaFeta Almar almar.feta Data 15 mai 2021 20:32:55
Problema Zeap Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.53 kb
#include <fstream>
#include <cstring>
#include <set>

using namespace std;

ifstream in("zeap.in");
ofstream out("zeap.out");

set <int> s;

int main()
{
    char cod[4];
    while(in >> cod)
    {
        if(strcmp(cod,"I")==0)
        {
            int x;
            in >> x;
            if(s.find(x) == s.end())
                s.insert(x);
        }
        else if(strcmp(cod,"S")==0)
        {
            int x;
            in >> x;
            if(s.find(x) != s.end())
                s.erase(x);
            else
                out << -1 << "\n";
        }
        else if(strcmp(cod,"C")==0)
        {
            int x;
            in >> x;
            if(s.find(x) != s.end())
                out << 1 << "\n";
            else
                out << 0 << "\n";

        }
        else if(strcmp(cod,"MAX")==0)
        {
            if(s.size() < 2)
                out << -1 << "\n";
            else
            {
                auto it1 = s.begin();
                auto it2 = s.rbegin();
                out << (*it2) - (*it1) << "\n";
            }

        }
        else if(strcmp(cod,"MIN")==0)
        {
            if(s.size() < 2)
                out << -1 << "\n";
            else
            {
                auto it1 = s.begin();
                s.erase((*it1));
                auto it2 = s.begin();
                s.insert((*it1));
                out << (*it2) - (*it1) << "\n";
            }
        }
    }
    in.close();
    out.close();
    return 0;
}