把瓶子洗干净 2020-04-09 02:19 采纳率: 0%
浏览 247

c++模板类问题求助???

【请使用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

enum Color {    //颜色枚举型定义
    MAKI,
    ERI,
    UMI
};

class Ball {    //小球类定义
private:
    Color color;
public:
    Ball();
    Ball(const Color& c);
    Color getColor() const;
    void setColor(const Color& c);
};

template <class T>
class Optional {    //盒子模板类定义
private:
    T content;  //盒子内容
    bool isEmpty;   //盒子是否为空
public:
    Optional();
    bool exists() const;    //判断盒子是否为空
    void clear();   //清空盒子
    void set(const T& t);   //放入物品
    T get() const;  //获取盒子中的物品
};

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-20 19:31
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表