花店布置花店布置花店布置
题目
小张在“五一”开了一家花店,他希望把他花店的柜台布置得尽可能地漂亮。他有F束不同的鲜花,还有更多数量的花瓶来放这些鲜花。花瓶被排成一行放在货贺上,并从1到V依次编号。1号瓶放在最左面,V号瓶放在最右面。鲜花也被从1到F编号。编号小的鲜花所放的花瓶的编号也小。也就是说,如果I<j, 则放鲜花I的花瓶一定在放鲜花J的花瓶的左边。如他有一束杜鹃花(编号为1),一束秋海棠(编号为2),一束康乃馨(编号为3)。现在他要把所有这些花放入花瓶中,并且杜鹃花所在的花瓶必须在秋海棠所在的花瓶的左边,同样,秋海棠所在的花瓶必须在康乃馨所在的花瓶的左边。如果花瓶的数量比鲜花数目多,那么将有一些花瓶被空置。注意,一个花瓶最多只能放一束鲜花。
因为花瓶的形状,鲜花种类也不同,因此不同种类的鲜花放入不同形状的花瓶可能产生不同的效果。我们用一整数来表示每种组合的好看程度,并列出一张表。我们规定空置花瓶的好看程度为0
根据上面的表格,杜鹃花放222号瓶中最好看,而在444号瓶中则显得很难看。
为了达到最好的视觉效果,小张想他的布置方案在满足鲜花插放顺序的前提下,好看程度之和必须最大。现在他请你帮他编写程序求出符合他要求的好看程度之和的最大值。
数据范围:1=<f<=1001=<f<=1001=<f<=100, 其中f是鲜花数目。鲜花由编号111到fff,f=<v<=100f=<v<=100f=<v<<

这篇博客介绍了一个关于花店布置的问题,要求在满足鲜花顺序的前提下,找到好看程度之和最大的布置方案。博主使用动态规划(DP)来解决这个问题,通过状态转移方程f[i][j]=max(f[i][j−1],f[i−1][j−1]+a[i])确定前i朵花束放进前j个花瓶中的最大美观值。文章还给出了输入输出样例和解题思路。"
117025659,10535579,C语言实现栈的压栈与出栈操作详解,"['C语言编程', '数据结构', '栈操作']
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



