POJ 3666 Making the Grade (dp, 数据结构[左偏树, 划分树, 函数式线段树等])
题目类型 dp,数据结构[左偏树,划分树,函数式线段树等]题目意思给出一个最多包含2000个在[0,1e9]范围内的数的数列问把这个数列修改成一个非递增或非递减数列的最小代价代价=原数列的每一个元素和修改后的数列的相应位置的元素的差的绝对值的和解题方法1.dp(离散化)dp[i][j]:前i个元素组成一个非递减数列且第i个元素的值为j的最小代价看起来计算要O(n^3)其实O(n^2)就可以了