//思路:分析易知递推关系式:dp[i][j] = (i - r)* r + dp[r][k] // r条自由线和i - r条平行线的交点数 + r条直线本身的交点数
// dp[i][j]表示 i 条直线可能的交点种数 j = (i - r)* r + dp[r][k]
// r表示自由线的条数,(i - r)表示平行线的条数,(i - r)* r 表示平行线和自由线的交点个数
// r 可以取 0 -- i - 1 但是这里初始化的缘故循环时 r 取 1 -- i - 1
// dp[r][k]表示 r 条直线本身的交点个数
// max i 条直线最多的交点数
// 先把i条直线0个交点的情况初始值为1(这是一定的),然后若i-r条直线有j个交点则i条直线必有(i-r)*r+j个交点,标记为 1
// 通过标记为 1 的下标 j 为 n 取 i 时的交点数
本题的巧妙之处在于:将下标对应为交点种类输出,同时又满足了从小到大输出这个条件
posted on 2010-08-15 10:02
雪黛依梦 阅读(464)
评论(0) 编辑 收藏 引用 所属分类:
动态规划