来源:程军康|编辑日期:2009-11-06 12:03:00|点击数: |发布:55
能量项链
本题是一道很经典的dp题目,其实质就是“石子合并问题”的变形,有谈不上什么变形,倒不如说复制更好一点。我想很多的牛人在这个题目失分的原因多为没弄懂题目的意思就下手做了,把题目看简单了。
简单的说:给你一项链,项链上有n颗珠子。相邻的两颗珠子可以合并(两个合并成一个)。合并的同时会放出一定的能量。不同的珠子的合并所释放的能量是不同的。问:按照怎样的次序合并才能使释放的能量最多?
我们用top表示第i颗珠子的头标记,用wei表示第i颗珠子的尾标记,合并两颗相邻珠子所释放的能量是:
Q=top*wei*wei[i+1]或top*top[i+1]*wei[i+1];(一个样的)
合并不一定按顺序的,本题所提供的样例也是导致出错的一大原因。
n个珠子进行一次合并的后,就归结到了n-1个珠子的合并的问题。所以我们想到了动态规划。
既然是dp题目,必然要满足dp的两大条件:、
1.最优子结构性质;
设Q[i,j]表示第i颗珠子到第j颗珠子合并所产生的能量。显然Q[1,n]表示的是合并产生的总的能量。给定一种标号方法,maxQ[1,n]就是所要求的。设最后一次合并在k
上一篇:
下一篇: