轻松的编程学习
首页
题库
学习路径
在线商城
能力地图
下载应用
登录 / 注册
菜单
⚠️ 第二步:用算法算总数
👁️ 2 人浏览
💬 0 人评论
❤️ 添加收藏
(本条路线统一用
g++ -std=c++17 -O0 -Wall
编译)
提交你的答案
请登录后提交答案。
去登录
← 第一步:把"头文件"那一段补齐
🔴 第三步:坏输入当场拦下 →
更多题目
改成"你好,有词"
输出"100 分"
把年龄改成 20
输出学习天数 30
修复:给文字加引号
修复:补上右括号
代码编辑器
语言:
python3
c11
cpp17
Ctrl
+
Enter
运行
👩🏫 AI
▶ 运行代码
重置代码
打印代码
#include <iostream> #include <memory> #include <vector> #include <string> #include <numeric> #include <stdexcept> class BadQty : public std::invalid_argument { public: explicit BadQty(const std::string &w) : std::invalid_argument(w) {} }; struct Item { static int made, gone; std::string name; int qty; Item(std::string n, int q) : name(std::move(n)), qty(q) { made++; } ~Item() { gone++; } }; int Item::made = 0; int Item::gone = 0; class Basket { public: void add(std::string name, int qty); int kinds() const; int total() const; private: std::vector<std::unique_ptr<Item>> items_; }; void Basket::add(std::string name, int qty) { if (qty <= 0) throw BadQty(name); items_.push_back(std::make_unique<Item>(std::move(name), qty)); } int Basket::kinds() const { return static_cast<int>(items_.size()); } /* TODO: 用 STL 算法(别写裸 for)把所有 qty 加起来 */ int Basket::total() const { return 0; } int main() { Basket b; b.add("apple", 3); b.add("pear", 5); b.add("fig", 2); std::cout << b.kinds() << "/" << b.total() << "\n"; return 0; }
本次输入:
输出:
👩🏫
AI
请登录后使用 AI 老师
×
登录后可获得解题思路、提示与错误分析。
去登录
关闭
🎉
恭喜你,回答正确!
系统判定:正确
我知道了
💬 题目评论
提交
全部评论
全部评论