小旭追女神之小旭要给女神抢票

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

小旭虽然在追女神,但是也没忘了敲代码,这一天,小旭正在敲链表,突然电脑就蓝屏了,无奈之下,小旭重启了电脑,再次登录系统后,发现桌面上多了一个名字叫“抢票神器”的程序,小旭试着运行了一下,果然是抢票用的,于是,小旭决定给自己的女神抢票,由于小旭的抢票神器的成功率实在是高,所以小旭的女神请求小旭给她的好姐妹儿也抢票,小旭怎么说也不能拒绝啊,这可是表现的大好机会,但是,他女神的好姐妹儿太多了,小旭录入她们的信息很费劲,也很费时间,最主要的是小旭没有时间陪她的女神了。但是小旭是程序员啊,于是他想用C语言开发了一套信息录入系统,把申请人的信息排成一个队列,因为小旭要去陪女神,所以他找到了你,请你帮忙。
小旭能告诉你的是:
1.本系统只允许一个身份证号只能买一张票
2.小旭也不知道他的女神有多少好姐妹儿
3.处理到文件结束
4.题目中所有的输出都不加引号(见下面示例)
5.每个人只能申请一张票,每个人用身份证号来标识,因为名字有可能重复
6.下面是小旭设置的该系统应有的指令,指令格式一行字符串,指令和参数空格隔开,这一行字符串的第一个单词永远代表指令
addInfo name sex id aim tel
addInfo表示有小旭的女神的好姐妹儿向小旭申请抢票,接下来的单词就是他们个身份证信息,name表示姓名(不超过20个字符),sex表示性别(只有0和1两个数,0代表男,1代表女),id代表身份证号,固定11位数字,aim表示目的地(长度不超过20位),tel代表电话(长度不超过11位)。如果某个人的信息已经在购买队列中或者已经购买成功,输出”don't buy again“,如果不在,把信息加到队列中,并输出“save succeed”。
delInfo id
delInfo 代表某个小旭的女神的好姐妹儿不想买票了,申请撤销买票,id代表他们的身份证号。如果该同学已经购买成功,输出”you can't revocat“,如果id在购买队列中,输出”delete succeed“,如果不在购买队列中也没有购买成功,输出”can't find the id“。id代表刚才命令中的id。
chgInfo id name sex aim tel
chgInfo代表某个小旭的女神的好姐妹儿想要修改她的信息,id代表被修改的人的身份证号(在小旭的的信息录入系统中,某个人的身份证号是不会重复的),随后是这个人的新信息姓名,性别,目的地,电话。如果id在购买队列中,更新队列中的信息,并输出”update succeed“,如果不在购买队列中,输出”can't find the id“。id代表刚才命令中的id。
findInfo id
findInfo代表在购买队列中查找某个人的信息(只在购买队列中查找),id代表身份证号。如果在找到id,输出该id所代表的人的信息,如果找不到,则输出”can't find the id“。id代表命令中的id。
succeedBuy id 这是系统发出的命令,代表身份证为id的这个人的票已经购买成功。购买队列中删除这个人的信息,并输出”id succeed to buy“,此条命令执行时保证id一定存在于购买队列中,id代表命令中的id。
你能帮小旭设计出这个系统吗?
PS:如果你还有不懂的地方,就看看示例吧。小旭的幸福就交到你手里了。

Input

题目描述中

Output

题目描述中

Sample Input

addInfo libiao 0 37012411111 Qingdao 17865920000
addInfo libiao 0 37012422222 Jinan 18753377777
addInfo BLF2 0 01000128743 Beijing 17865924965
findInfo 01000128743
succeedBuy 37012411111
addInfo libiao 0 37012411111 Qingdao 17865920000
delInfo 37012411111

Sample Output

save succeed
save succeed
save succeed
BLF2 0 01000128743 Beijing 17865924965
37012411111 succeed to buy
don't buy again
you can't revocat

Hint


Source

莫忆 2015级ACM集训队第二次选拔赛