Pagini recente » Cod sursa (job #2273049) | Cod sursa (job #1025306) | Cod sursa (job #1072628) | Cod sursa (job #844667) | Cod sursa (job #2899537)
#include <iostream>
#include <fstream>
#include <set>
using namespace std;
ifstream fin("zeap.in");
ofstream fout("zeap.out");
set<int> zeap;
int main()
{
int x;
string command;
while(fin>>command){
if(command == "I"){
fin>>x;
zeap.insert(x);
}
if(command == "S"){
fin>>x;
auto s = zeap.find(x);
if(s != zeap.end())
zeap.erase(x);
else fout<<-1<<"\n";
}
if(command == "C"){
fin>>x;
auto s = zeap.find(x);
if(s != zeap.end())
fout<<1<<"\n";
else fout<<0<<"\n";
}
if(command == "MAX"){
if(zeap.size() < 2)
fout<<-1<<"\n";
else fout<<*(--zeap.end())-*zeap.begin()<<"\n";
}
if(command == "MIN"){
if(zeap.size() < 2)
fout<<-1<<"\n";
else{
int dif = 1000000001;
for (auto val1 = zeap.begin(); next(val1) != zeap.end(); val1++) {
if(dif > *next(val1)-*val1){
//cout<<dif<<" "<<*next(val1)-*(val1)<<endl;
dif = *next(val1)-*val1;
//cout<<*(val1)<<" "<<*next(val1)<<endl;
}
}
fout<<dif<<"\n";
}
}
}
}