通过率 56% · 提交 16 · 通过 9
在远古魔法王国的集市中,存在若干家 卷轴商铺。为了方便记录各商铺的采购情况,大魔导师希望你实现一个简易的采购统计系统,系统需要支持以下功能: * ArcaneScrollProcureSystem() —— 系统初始化(创建存储各商铺的采购数据结构,初始无任何采购记录)。 * recordProcure(int shopId, int scrollType, int manaCost) —— 记录某商铺 `shopId` 的一次采购数据:采购消耗魔力值为 `manaCost`,`scrollType` 仅取值为 1、2、3,分别代表火焰卷轴、寒冰卷轴、幻影卷轴。 * queryShops() —— 返回已有采购记录的商铺编号列表,若无符合条件的商铺则输出空行: * :商铺的 升序 排列; * :若累计采购魔力消耗相同,则按商铺编号 降序 排列。 * queryTotalProcure(int shopId, int scrollType) —— 返回指定商铺 `shopId` 中,某类卷轴 `scrollType` 的累计采购魔力消耗;若该商铺无此类卷轴的采购记录(或商铺无任何采购记录),则返回 `0`。
这类题属于华为可信认证科目一方向中「可信 / 系统设计」方向的高频题型,通常考察对「可信 / 系统设计」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
第一行输入一个整数 Q,表示函数调用次数。
接下来共 Q 次操作,每次输入包含:
一行字符串表示函数名称:
"ArcaneScrollProcureSystem" —— 初始化系统,无参数;
"recordProcure" —— 三个参数,分别为:
shopId(商铺编号,0 <= shopId <= 10)scrollType(卷轴类型,1 <= scrollType <= 3)manaCost(本次采购消耗魔力值,0 < manaCost <= 100)"queryTotalProcure" —— 两个参数:
shopIdscrollType"queryShops" —— 无参数。
每个参数均单独占一行输入。
对每次函数调用,输出对应结果:
"ArcaneScrollProcureSystem" 和 "recordProcure" 输出 "null"。"queryTotalProcure" 输出一个整数。"queryShops" 输出一行,商铺编号按空格分隔;若结果为空,则输出一个空行。示例 1
输入示例
20 ArcaneScrollProcureSystem recordProcure 3 1 20 recordProcure 1 2 15 recordProcure 2 3 40 recordProcure 3 2 10 recordProcure 0 1 5 recordProcure 0 2 5 recordProcure 4 1 30 recordProcure 5 3 25 recordProcure 5 1 25 queryTotalProcure 3 1 queryTotalProcure 3 2 queryTotalProcure 1 1 queryShops recordProcure 2 1 15 recordProcure 1 1 10 queryShops queryTotalProcure 2 3 queryTotalProcure 4 2 queryShops
输出示例
null null null null null null null null null null 20 10 0 0 1 4 3 2 5 null null 0 1 4 3 5 2 40 0 0 1 4 3 5 2
时间限制 1000 ms · 内存限制 128 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有