【正文】
子問題的最優(yōu)解(包含這枚導彈的決策序列), a[j]表示第 j枚導彈的高度。 ? 開始時所有的 f[i]都初始化為 1 ? i從 2開始直到 n進行順推計算所有的 f[i] ? 最后輸出最大的 f[i] 某個階段 i的 f[i]求解 ? f[i]的子問題是哪些? ? f[i]子問題的最優(yōu)解保存在哪里? ? 如何根據(jù)子問題的最優(yōu)解推算父問題的最優(yōu)解? 狀態(tài)轉移方程 ? F[i]=max{f[j]+1 | 必須滿足的是所有的a[j]都必須不小于 a[i]} 核心程序段 ? fillchar(f,sizeof(f),1)。 ? best:=1。 ? for i:=2 to n do ? begin ? for j:=1 to i1 do ? if (a[j]=a[i]) and (f[j]+1f[i]) then f[i]:=f[j]+1。 ? if bestf[i] then best:=