题库首页 › 青少年软件编程(C语言) › 题目 16814

搬运水果 在果园里,n 堆果实排成一个环形,第 i 堆果实的重量为 ai。果农需要将所有果实合并成一堆。合并规则如下: (1)每次只能合并相邻的两堆,新堆的重量为两堆重量之和; (2)每次合并消耗的体力等于新堆的重量; (3)合并后新堆与剩余堆仍保持环形排列。 请设计合并顺序,求出合并全过程消耗的最小总体力与最大总体力。 时间限制:1000ms内存限制:256MB 输入格式 第一行:整数 n,表示果实堆数; 第二行:n 个整数 a1、a2、……、an,表示每堆果实的重量。 输出格式 第一行:最小总体力消耗; 第二行:最大总体力消耗。 输入样例 4 4 5 9 4 输出样例 43 54 数据范围: 1≤n≤100,1≤ai≤1000。

正确答案:参考程序(Python):n=int(input());a=list(map(int,input().split()));a=a+a;pre=[0]*(2*n+1);for i in range(1,2*n+1):pre[i]=pre[i-1]+a[i-1];import sys;INF=10**9;dmin=[[0]*(2*n) for _ in range(2*n)];dmax=[[0]*(2*n) for _ in range(2*n)];for L in range(2,n+1):for i in

试卷来源:202509 青少年等级考试C/C++真题六级

本卷相关题目

在线做题 同科目题库