Description
Sail有一个奇怪的癖好,喜欢养奇怪的宠物,虽然在省长要来检查,学校严明禁止养宠物,但他还是孜孜不倦的在自己的衣柜里养了一种很神奇的宠物,就暂时叫它spark吧。
Spark算是一种物种,里面包含着很多个种类,sail想对不同种类的spark进行混养,来了解在混养的时候,spark是否会发生什么变异等。
Spark是一种很神奇的物种,它不允许在自己的生活环境里有着另一只和他相同种类的spark存在,因此,在spark的生活范围内,对于每一个种类的spark只会有一只存在,要是有两只同一种类的spark生活在一起,有一只必将死去。
现在,首先sail对每一种类的spark进行编号(从0开始),假设刚开始的时候sail的衣柜是空的,之后,sail会定期往衣柜里放入某个种类的spark,或者定期查看里面所有的spark。
现在,给你两个操作,分别表示sail往衣柜里放某个种类的spark或者看柜子里spark的信息或者拿出某个种类的spark,请按照要求输出sail需要的信息。
操作1,添加,格式为“add x”,x表示加入的编号为x的spark种类的宠物一只。
操作2:查看所有spark,格式为“look”,之后按照编号从小到大输出现在衣柜里包含的spark的相应的种类编号,每两个编号之间包含一个空格。
操作3:删除,格式为“delete x”,x表示sail将编号为x的spark种类的宠物拿出来,要是现在衣柜里没有第x种spark,则输出“error”,要是有则什么都不输出。
Input
输入数据直到文件尾,每一行代表一个操作。(0<=x<=100)
Output
对于相应的输入 ,给出相应的输出信息吧。
Sample Input
add 0 look add 1 look add 1 look delete 2
Sample Output
0 0 1 0 1 error#include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<set> using namespace std; set<int>a; set<int>::iterator it; char s[100]; int main() { int num,i,j; while(cin>>s) { if(s[0]=='a') { cin>>num; a.insert(num); } if(s[0]=='l') { for(it=a.begin();it!=a.end();it++) { if(it!=a.begin()) cout<<" "; cout<<*it; } cout<<endl; } if(s[0]=='d') { cin>>num; if(a.count(num)==0) cout<<"error"<<endl; else a.erase(num); } } return 0; }