#GESP620260601. 【GESP-六级】-2026.06-条形蛋糕
【GESP-六级】-2026.06-条形蛋糕
题目描述
寒假到了,小杨同学打算找一份兼职,顺便体验一下打工人的生活。
小杨同学给一家蛋糕店发送了一份自己的简历,希望可以在寒假来这里帮忙。店长最近正好遇到了一个难题:店里每天会做一条长条蛋糕,但是不同长度的蛋糕块卖出的价格不同,应该怎么分才能卖得最多呢?
有趣的是店长曾经学习过计算机专业。他最近对动态规划算法很感兴趣,于是打算用这个问题考一考小杨同学,问题如下:
给定一条长度为 n 的长条蛋糕和一个价格表,该价格表表示长度为 i(1≤i≤n)的蛋糕块的价格为 p_i。求蛋糕的分割方案,使得总销售价格最大,注意蛋糕块的长度必须为整数。
输入格式
第一行一个正整数 n(1≤n≤1000),表示长条蛋糕的总长度。第二行 n 个正整数 p_1,…,p_n(1≤p_i≤10^9),表示不同长度蛋糕块的价格。
输出格式
一行一个正整数,表示最大总销售价格。
样例
样例输入 1
4
1 5 8 9
样例输出 1
10
样例输入 2
10
1 5 8 9 10 17 17 20 24 30
样例输出 2
30
样例解释
样例 1 中,长度为 4 的长条蛋糕可以分为 {4}、{1,3}、{2,2}、{1,1,2}、{1,1,1,1} 五种本质不同的方案,对应总价为 9、9、10、7、4,因此最大总价为 10。样例 2 中,长度为 10 的蛋糕直接整条出售即可获得 30。
数据范围
原卷数据范围:1≤n≤1000,p_i 为正整数。