通过率 0% · 提交 0 · 通过 0
解码器逐步生成长度为 T 的 token 序列,词表大小为 V(token 编号 0 到 V-1)。第 1 步选择 token j 得分 s[j];第 t 步(t >= 2)在上一步选择的 token 为 i 时选择 token j,得分 M_t[i][j]。序列总分为各步得分之和。束搜索按固定规则执行:开始时束中只有空序列(分数 0);每一步把束中每个序列分别扩展 V 个 token 得到候选序列,再按「总分从大到小,总分相同时序列字典序从小到大」排序,只保留前 B 个进入下一步;T 步结束后,束中排在最前面的序列即为答案。注意:答案由上述束搜索过程定义,当 B 较小时它可能不等于全局最优序列。请输出答案序列的总分与序列本身。字典序比较按 token 编号逐位比较。
这类题属于算法机考高频题型中「华为 AI 岗 / beam search」方向的高频题型,通常考察对「华为 AI 岗 / beam search」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
第一行输入三个整数 T V B。第二行 V 个整数,为第 1 步各 token 的得分 s[0..V-1]。随后 T-1 组,每组 V 行、每行 V 个整数,第 t 组(对应第 t+1 步)第 i 行第 j 列为 M[i][j],表示上一 token 为 i 时选择 token j 的得分。
第一行输出答案序列的总分;第二行输出 T 个 token 编号,用单个空格分隔。
示例 1
输入示例
2 2 1 3 5 9 0 0 1
输出示例
6 1 1
B=1 时束结果不等于全局最优(答案由过程定义)
示例 2
输入示例
1 3 2 7 7 3
输出示例
7 0
同分取字典序小
时间限制 3000 ms · 内存限制 256 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有