1、现给定n支蜡烛线性排列在某一维坐标系上,从左往右第i支蜡烛的坐标为xi,保证x1<x2<x3<...<xn。初始状态下,这些蜡烛都没有被点燃,现在要点燃其中的K支蜡烛。现在你在坐标x=0的位置上,你可以向左或向右移动,移动速度为每秒一个长度单位。你点燃坐标上的所有蜡烛的时间忽略不计。现请你求出点燃坐标上的所有蜡烛所需要的最小时间。
输入描述:输入包含两行,第一行含有两个正整数n,K,其中1<=n<=10^5,1<=K<=n;第二行包含n个整数x1,x2,...,xn,其中-10^8<=xi<=10^8。
输出描述:输出仅包含一行,输出点燃K支蜡烛所需要的最小时间。
示例
输入
5 3
-30 -10 10 20 50
输出
40
说明:5支蜡烛,要点燃其中的3支,现在在0位置处,先左移到-10处点燃蜡烛x2,再右移到10和20处点燃蜡烛x3,x4,一共移动了40个单位长度,共40秒。
2、公司中总是有非常多的设备,对每台设备编号可以使我们更加方便地管理设备。在一次审查中发现,有些设备共享同一编号,有些设备编号超出所在编号区间。我们必须马上解决这些问题。你必须从1~n中选择数字按升序地进行编号,同时由于更改设备编号需要花费很多时间,所以已经满足要求的编号无需更改。(对于重复的编号,保留第一次出现的那台设备编号,务必保证更改的那些编号保持升序)现给你n台设备编号,要求对这n台设备按如上要求重新编号。
输入描述:输入包含两行,第一行为设备台数n,其中1<=n<=10^5;第二行包含n个正整数a1,a2,...,an表示当前设备编号,其中1<=a1<=10^5