zufe 1926: sailspark的奇怪癖好 (set的使用,好题 STL)

3 篇文章 0 订阅

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表示加入的编号为xspark种类的宠物一只。

       操作2:查看所有spark,格式为“look”,之后按照编号从小到大输出现在衣柜里包含的spark的相应的种类编号,每两个编号之间包含一个空格。

       操作3:删除,格式为“delete x”,x表示sail将编号为xspark种类的宠物拿出来,要是现在衣柜里没有第xspark,则输出“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;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值