codeforces 713 C. Sonya and Problem Wihtout a Legend (dp(n^2)/slope trick (nlogn))

题目链接:https://codeforces.com/contest/713/problem/C

如果要求序列是严格不降的,那么最终序列中的每个元素一定是原来的序列中的某个数(否则可以通过调整使答案更小)

于是令 \(dp[i][j]\) 表示第 \(i\) 个数是 \(j\) 的最小值,\(dp[i][j] = \min \limits_{k=1}^j dp[i-1][k]+|a[i]-j|\)

要使得题目要求从严格递增转化为严格不降,只需要令 \(a[i] = a[i]-i\) 即可

时间复杂度 \(O(n^2)\)

posted @ 2021-09-14 09:35  Tartarus_li  阅读(39)  评论(0编辑  收藏  举报