通过率 45% · 提交 11 · 通过 5
在艾尔德林大陆的法师协会中,有一种用于展示咒语名称的 魔法卷轴。卷轴的宽度有限,但上面的咒语需要不断循环滚动显示,以供学徒们反复学习。 法师们给定了一组 ,这些咒语按照固定顺序排列。为了完成仪式,这组咒语需要在卷轴上 。 魔法卷轴在显示咒语时必须遵守以下规则: 1. 任意一个咒语不可被拆分到多行显示; 2. 同一行中相邻的两个咒语之间必须使用一个空格分隔; 3. 每一行显示的字符总数(包括空格)不得超过; 4. 咒语必须严格按照原始顺序循环显示,不能跳过或重排。 请你计算: 在满足上述规则的前提下,完整显示所有咒语内容所需的最少行数。 输入 * 第一行一个整数 `n`,表示基础咒语的数量 * `1 <= n <= 100` * 第二行包含 `n` 个字符串,表示咒语名称,按顺序给出 * 每个字符串仅包含小写英文字母 * `1 <= spell_i.length <= 10` * 第三行一个整数 `repeatCount`,表示整组咒语需要完整重复显示的次数 * `1 <= repeatCount <= 10000000` * 第四行一个整数 `scrollWidth`,表示魔法卷轴每一行可显示的最大字符数 * `10 <= scrollWidth <= 150` 输出 最少需要的行数 示例 输入: 5 one two three four five 5 15 输出: 9 在该示例中,一种使用行数最少的显示方式如下(仅为示意):
1. one two three
2. four five one
3. two three four
4. five one two
5. three four five
6. one two three
7. four five one
8. two three four
9. five因此,最少需要 `9` 行来完成所有咒语的展示。
这类题属于华为可信认证科目一方向中「可信 / 哈希表」方向的高频题型,通常考察对「可信 / 哈希表」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
第一行一个整数 n,表示基础咒语的数量
1 <= n <= 100第二行包含 n 个字符串,表示咒语名称,按顺序给出
1 <= spell_i.length <= 10第三行一个整数 repeatCount,表示整组咒语需要完整重复显示的次数
1 <= repeatCount <= 10000000第四行一个整数 scrollWidth,表示魔法卷轴每一行可显示的最大字符数
10 <= scrollWidth <= 150最少需要的行数
示例 1
输入示例
5 one two three four five 5 15
输出示例
9
在该示例中,一种使用行数最少的显示方式如下(仅为示意):
1. one two three
2. four five one
3. two three four
4. five one two
5. three four five
6. one two three
7. four five one
8. two three four
9. five
因此,最少需要 9 行来完成所有咒语的展示。
时间限制 1000 ms · 内存限制 128 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有