题目描述
你有一个闹钟,闹钟的定时可以用两个变量 a1,a2 表示,变量的初始值皆为 0。把一个变量从 x 调整至 y 需要 ∣x−y∣ 的代价。
接下来给出 n 个数 k1,k2,⋯,kn。对于第 i 天,你都需要通过调整变量的值,使得两个变量中至少有一个等于 ki。求最小代价。
输入格式
第一行一个整数 n。
第二行 n 个整数 k1,k2,⋯,kn。
输出格式
一行一个整数,表示最小代价。
6
1 1 4 5 1 4
7
5
4 1 9 2 3
12
提示
样例解释
样例解释一:
第一天:a={1,0}。
第二天:a={1,0}。
第三天:a={4,0}。
第四天:a={5,0}。
第五天:a={5,1}。
第六天:a={4,1}。
样例解释二:
第一天:a={4,0}。
第二天:a={4,1}。
第三天:a={9,1}。
第四天:a={9,2}。
第五天:a={9,3}。
数据范围
数据编号 |
n≤ |
特殊性质 |
1 |
10 |
无 |
2 |
103 |
ki≤100 |
3∼4 |
无 |
5∼7 |
105 |
ki≤100 |
8∼10 |
无 |
另外,为了卡掉一些错误做法,本题添加了若干 hack 测试点。hack 测试点的数据满足 n≤10 且 ki≤100。若你的程序没有通过至少一个 hack 测试点,则此题分数记为 0 分。
对于 100% 的数据,1≤n≤105,1≤ki≤109。