通过率 47% · 提交 633 · 通过 300
小慕在整理一份跨国项目的财务记录,上面有多笔不同币种的金额,需要全部换算成人民币分(fen)后汇总输出。 每行记录一笔金额,格式为数字+货币单位,可能只包含主币(如元),只包含辅币(如分),或主辅币组合。 要求将所有金额统一转换为人民币分(fen),然后求和,结果只保留整数部分,小数部分直接舍弃。 所有货币的主辅币换算关系均为1:100,具体如下: - 1CNY=100fen(1元=100分) - 1HKD=100cents(1港元=100港分) - 1JPY=100sen(1日元=100仙) - 1EUR=100eurocents(1欧元=100欧分) - 1GBP=100pence(1英镑=100便士) 如下: 即:100CNY = 1825JPY = 123HKD = 14EUR = 12GBP | CNY | JPY | HKD | EUR | GBP | | ---- | ---- | ---- | ---- | ---- | | 100 | 1825 | 123 | 14 | 12 |
这类题属于华为 OD 机考真题方向中「100分 / 字符串」方向的高频题型,通常考察对「100分 / 字符串」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
第一行输入为N,N表示记录数。0<N<100 之后N行,每行表示一条货币记录,且该行只会是一种货币。
将每行货币转换成人民币分(fen)后汇总求和,只保留整数部分。 输出格式只有整数数字,不带小数,不带单位。
示例 1
输入示例
1 100CNY
输出示例
10000
100CNY转换后是10000fen,所以输出结果为10000
示例 2
输入示例
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
本题难度不高,属于一个非常基础的模拟类型题目。
首先我们需要根据题意构建一个非常长的 exchange() 函数,用于根据汇率进行货币单位的换算。
在 Python 中得使用 if-elif 语句,但在 Java、C++ 等语言中,使用 switch 语句更加符合代码规范。
在 exchange() 函数中,我们仅需传入一个单位字符串 unit,直接返回在该单位下和人民币分(fen)的汇率。
特别注意:因为可能出现除不尽的情况,所以要使用浮点数来进行计算而非整数。
另一个需要解决的问题就是对每一条货币记录 s 进行字符串处理。
每一个字符串都可能含有 1 或 2 个货币单位,而货币单位前面可能包含若干数字。
我们可以从头到尾遍历字符串,分别用两个变量 num 和 unit 来记录遍历中出现的数字和单位。
除此之外,当我们获得一个完整的单位字符串的时候,我们需要进行汇率换算,调用 exchange() 函数。当满足以下条件时,我们确定获得了一个完整的单位字符串:
i 是 s 的最后一个索引,ch 是 s 的最后一个字符s[i] = ch 是字母,下一个字符 s[i+1] 是数字此时进行汇率换算,并且需要将 unit 和 num 进行重置。
还有一个微小的地方需要注意,题目要求最终要输出的结果只保留整数部分,因此需要取整后输出。
题目基本就解决了。
复杂度分析 设 n 为货币记录的条数,L 为单条记录字符串的长度。对每条记录,代码用一个 for 循环逐字符扫描:数字字符用 num = num*10 + int(ch) 累积数值,字母字符拼进 unit;当扫到字符串末尾、或下一个字符是数字时,说明一个「数字+单位」段结束,调用一次 exchange 函数换算并累加进 ans。exchange 内部只是一串 if-elif 的常数次比较,是 O(1)。因此单条记录的处理时间是 O(L),n 条记录总时间复杂度为 O(n×L),即与输入的总字符数成线性,瓶颈就是这趟逐字符扫描,没有排序或嵌套遍历。空间上只用了 num、unit、ans 等常数个变量,除输入外的额外空间复杂度为 O(1)。
边界与注意事项
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
1 3000fen
输出示例
3000
3000fen,结果就是3000
示例 3
输入示例
1 123HKD
输出示例
10000
HKD与CNY的汇率关系是123:100,所以换算后,输出结果为10000
示例 4
输入示例
2 20CNY53fen 53HKD87cents
输出示例
6432
20元53分 + 53港元87港分,换算成人民币分后汇总,为6432
时间限制 1000 ms · 内存限制 128 MB
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有