题目描述
尼克在 Scratch中设计了一个接苹果游戏。有n个苹果从屏幕顶部的某一处垂直往下掉,一直掉到屏幕底部,在前一个苹果到达屏幕底部后,下一个苹果才开始往下掉。在屏幕底部有一个篮子,玩家可以左右移动篮子,但不能上下移动。当苹果掉到屏幕底部时,如果篮子正好在相同的地方,则认为该苹果被成功接起。
游戏的目标是用最少的移动步数接起掉下来的苹果。
Scratch 舞台中心点的坐标值为(0,0),第一个数代表x坐标,第二个数代表y坐标。x坐标的最小值位于舞台最左端为-240,最大值位于舞台最右端为240。y坐标的最小值位于舞台最下端为-180,最大值位于舞台最上端为180。角色如果向左移动,x坐标值会减少,向右移动x坐标值则会增加。
篮子的初始位置在(x1,-180),苹果都从坐标(x2,180)往下掉。
编写一个程序,求出接起所有苹果时,篮子最少的移动步数。
输入
共三行。
第一行,一个整数x,(-240≤x1≤240),表示篮子的初始x坐标。
第二行,一个整数n(1≤n≤10^6),表示苹果的个数。
第三行,n个整数x(-240≤x2≤240),表示按照苹果下落顺序描述每个苹果的x坐标,数与数之间以一个空格隔开。
输出
一行,一个整数,表示接起所有苹果,篮子最少的移动步数。
样例输入输出
提示