5.13华为OD机试真题 新系统 - 查找能被整除的最大整数 (Java/Py/C/C++/Js/Go)

查找能被整除的最大整数

2026 华为OD机试真题 5月13日华为OD上机新系统考试真题 100 分题型

点击查看华为 OD 机试真题完整目录:2026最新华为OD机试新系统卷 + 双机位C卷 真题题库目录|全覆盖题库 + 逐点算法考点详解

题目描述

给定一个字符串和一个正整数,字符串由大小写字母和数字组成,要求从字符串中找出最大能被给定正整数整除的数。

输入描述

  • string inputStr // 第一个字符串
  • int inputDivisor // 第二个正整数

输出描述

result // 返回结果值

:

  1. 给定的 inputStr 字符串长度为 1~ 10000,给定的 inputDivisor 值的范围为 1~ 99;

  2. 从 inputStr 中解析的整数不可分割,支持前缀为 0 整数串,数值范围为 0~ 999,例如:

    (1) “29ab03”、“29ab003”、“29ab0003”、“29ab00003”、"29ab000003"等 3 前面有前缀 0 的数字串,解析出整数为 29 和 3;

    (2) “0abc123”、“00abc123”、“000abc123”、“0000abc123”、“00000abc123” 等含一个或多个 0 的数字串,解析出整数为 0 和 123。

  3. 如果输入都合法且能找到能被整除的最大数,则输出该最大数; 其他情况输出 −1,例如: (1) 输入数据包含非法字符、值超出范围、长度超出范围等; (2) 没有找到能被 inputDivisor 整除的数。

补充说明

  1. 程序运行内存要小于256MB;
  2. 程序运行耗时不能超过 1 秒。

示例1

输入

abc123EFEDG34aadD78er,2

输出

78

说明

34 和 78 都能被 2 整除,78 为能被整除的最大数。

示例2

输入

wrwqr1.0we+de-,3

输出

-1

说明

参数 1 字符串中包含非法字符 .+−

示例3

输入

ewr23hk064ASW12VBG,4

输出

64

说明

获取的整数列表为 23、64、12,能被 4 整除的最大数为 64

示例4

输入

ewr23hk064ASW12VBG,5

输出

-1

说明

获取的整数列表为 23、64、12,都不能被5整除

示例5

输入

wrq45ret0eww237ere,7
</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

算法大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值