【请使用C++的模板类来完成此问题】
Bittersweet便利店迎来4周年店庆,店主BS举行了为期一周的有奖竞猜活动,活动规则如下:
桌子上摆放了A、B、C三个盒子,A盒子中可能有写着1到10整数的纸条,B盒子中可能有写着0.1到1.0小数的纸条,C盒子中可能有一个带颜色(maki红、eri黄、umi蓝)的小球;
店主BS可能在任意时刻做三件事情:选择一个盒子并清空它,选择一个盒子并放入相应物品,选择一个盒子并修改其中物品的属性;
在某一时刻到店来的顾客可以参与有奖竞猜,首先顾客选择一个盒子,如果盒子为空则没有中奖,如果盒子非空,店主BS会要求顾客猜测其中的内容物,如果顾客答对了,则中奖,否则也不算中奖。
三个盒子初始都是空的,现在给定BS的操作序列和顾客的操作序列,请你对于每一个顾客的操作,给出其有奖竞猜结果。
注意:店主在选择一个盒子放入物品的时候,若所选盒子非空,则此操作无效,应当被忽略;店主在选择一个盒子修改其中物品属性的时候,若所选盒子为空,则此操作无效,应当被忽略。
Input 仅包含一组测试样例。测试样例的第一行是一个整数n(0 < n <= 100),代表操作序列的条数。
接下来有n行,每行描述一条操作序列。操作序列格式为:
ROLE BOX [OP] [OPR]
其中ROLE是一个整数,代表动作发起人,取值为店主(1)或者顾客(2);BOX是一个char,代表选择的盒子,取值为'A'、'B'或'C';OP是一个整数,代表操作,对于店主取值为清空盒子(1)、放入物品(2)、修改物品属性(3),对于顾客取值只有猜测(1);OPR是一个整数(1-10)、一个浮点数(0.1-1.0)或者一个字符串("maki","eri","umi"),代表物品属性(店主清空盒子的操作不需要此字段)。
例如,1 C 2 "eri" 代表店主向C盒子里放入了一个eri黄色的小球,2 B 1 0.3 代表一个顾客猜测B盒子里有一张写着0.3的纸条。
Output 对于每一个顾客操作序列,在一行输出ta的中奖情况。若中奖,请输出“omedetou”,否则请输出“zannen”。
Sample Input 12 1 A 2 3 1 C 2 maki 2 C 1 maki 1 B 2 0.6 1 A 1 2 A 1 3 1 B 3 0.5 2 B 1 0.5 1 B 2 0.6 2 B 1 0.6 1 A 3 3 2 A 1 3 Sample Output omedetou zannen omedetou zannen zannen
本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。 https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。