bzoj#P2171. K凹凸序列
K凹凸序列
题目描述
一个序列的第 项被称作奇数项,第 项被称作偶数项。
一个序列 被称作 ZigZag 序列当且仅当以下两个条件中的一个(或两个)成立:
- 除了首项,所有的奇数项都比它的前项小且所有的偶数项都比它的前项大。
- 除了首项,所有的奇数项都比它的前项大且所有的偶数项都比它的前项小。
一个序列 被称作 凹凸序列当且仅当它的最长 ZigZag 子序列(不一定是连续子序列)的长度不超过 。现在有一个序列 ,每次可以花费 的代价使得 中的某一项增加或减少 。我们的目的是花费最少的代价让它成为 凹凸序列。
输入格式
输入的第一行包含两个正整数,分别表示数列 的长度 和 。
接下来的 行每行一个自然整数,依次表示数列的项。
输出格式
输出一个整数,表示最小代价。
样例输入
9 3
1
2
3
6
9
8
7
4
5
样例输出
1
样例说明
把最后一项减小 ,得到序列 1 2 3 6 9 8 7 4 4
,它的最长 ZigZag 子序列之一是 1 9 4
,长度为 ,符合要求。
数据规模与约定
前 个测试点满足:,。
第 个测试点满足:,。
第 个测试点满足:,。
第 个测试点满足:,。
所有测试点满足:。
题目来源
版权所有者:范浩强