页面加载中…
通过率 59% · 提交 17 · 通过 10
小慕有一个长度为n的数组,她最多可以进行k次操作,每次操作如下: 1. 选择两个整数i, j,1 <= i < j <= n 2. 选择两个整数x, y,使得xy = aiaj 3. 将ai替换为x,将aj替换为y 她希望最多进行k次操作之后,最后数组中的元素的总和尽可能大。
这类题属于华为 OD 机考真题方向中「美团 / 优先队列」方向的高频题型,通常考察对「美团 / 优先队列」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
一行两个整数n, k,表示数组的长度和操作的次数。
一行n个整数 a1,a2,...,an,表示数组的元素。
1 <= k < n <= 10^5
1 <= ai <= 10^5
输出一个整数,表示最后数组中的元素的总和的最大值,由于答案可能很大,你只需要输出答案对10^9+7取模的结果。
示例 1
输入示例
5 2 1 2 3 4 5
输出示例
65
时间限制 1000 ms · 内存限制 128 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有