3119: 改造序列

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

给定一个序列 �1,…,��a1,…,an ,小爱可以修改这个序列,每步修改只能修改一个数字,且只能将这个数字增加一个单位或减少一个单位。

请问,最少需要几步修改,才能将序列调整成一个上升且连续的整数序列。所谓上升且连续,就是指每一个数字恰好比前一个数大 11。

输入

第一行:单个整数 �n,表示数列长度;
第二行:�n 个整数,表示 �1,…,��a1,…,an。


  • 对于 30%30% 的数据,1≤�≤201≤n≤20,1≤��≤201≤ai≤20;
  • 对于 60%60% 的数据,1≤�≤50001≤n≤5000,1≤��≤50001≤ai≤5000;
  • 对于 100%100% 的数据,1≤�≤5000001≤n≤500000,−109≤��≤109−109≤ai≤109


输出

单个整数:表示最小的修改步数。

样例输入 复制

5
2 3 3 3 3

样例输出 复制

5

提示

改成1 2 3 4 5
改成-1 0 1 2 3


备注: 需要用到数轴,绝对值特性。
提示:
升序序列即: k, k+1, k+2, k+3, ...., k+n-1


来源