black

算法设计与分析

登录

问答题

计算题

在一个操场的四周摆放着n堆石子。现要将石子有次序地合并成一堆。规定每次至少选2堆最多选k堆石子合并成新的一堆,合并的费用为新的一堆的石子数。试设计一个算法,计算出将n堆石子合并成一堆的最大总费用和最小总费用。
输入数据的第1行有2个正整数n和k,表示有n堆石子,每次至少选2堆最多选k堆石子合并。第2行有n个数,分别表示每堆石子的个数。(贪心算法,要求给出贪心策略)

【参考答案】

最小费用策略:每次选k堆最小的堆合并
排序:5,9,12,13,16,22,45;13,16,22,26,45......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)

相关考题

问答题 用动态规划算法解0-1背包问题:n=5,w=[2,9,4,6,7],p=[6,10,12,8,13],c=15。

问答题 用快速排序算法对序列45,35,65,97,78,13,27进行排序。 (每一趟排序以第一个元素为数轴。要求每一趟排序有完整的过程。)

问答题 给出一个赋权无向图如下,求顶点S到T的最短路(直接在图上用粗线画出即可)

All Rights Reserved 版权所有©易学考试网(yxkao.com)

备案号:湘ICP备2022003000号-3