凸多边形的划分 题解

给定一个具有 \(N(N \leq 50)\) 个顶点(从 \(1\)\(N\) 编号)的凸多边形,每个顶点的权均是一个正整教,
问:如何把这个凸多边形划分成 \(N - 2\) 个互不相交的三角形,使得这些三角形顶点的权的乘积之和最小?

\(f(i,j)\) 表示 \(i \sim j\) 这一段连续顶点的多边形划分后最小乘积
枚举 \(k\)\(i,j\)\(k\) 相连成基本三角形,并把原多边形划分成两个子多边形
\(f(i,j) = \min(f(i,k) + f(k,j) + a[i] * a[j] * a[k])\)
\(1 \leq i < k < j \leq n\)

posted @ 2024-01-26 11:32  5t0_0r2  阅读(86)  评论(0)    收藏  举报