[COCI2011-2012#1] JABUKE
题目描述
Mirko 最近迷上了一款电子游戏。
这款游戏的屏幕被分成 N N N 列。在屏幕的底部,有一艘 M M M 列宽的船。游戏中,玩家可以将这艘船左右移动,但船必须时刻保持完全在屏幕内。初始时船占据屏幕最左边的 M M M 列。
有苹果会从屏幕顶部掉落。每个苹果都从顶部的 N N N 列的其中一列开始以直线掉落。当当前的苹果掉落到屏幕底部时,下一个苹果开始掉落。
如果当一个苹果掉落到底部时,船覆盖了苹果所在的列,那么我们说这个苹果是被捡起的。你的任务是在捡起所有苹果的前提下,最小化船移动的距离。
输入格式
第一行包含两个以空格分隔的整数 N , M N,M N,M。
第二行包含一个整数 J J J,表示将要掉落的苹果的个数。
接下来 J J J 行的第 i i i 行包含一个整数,表示第 i i i 个苹果将要从哪一列开始掉落。
输出格式
输出一行一个整数,表示最小的船移动的距离。
样例 #1
样例输入 #1
5 1
3
1
5
3
样例输出 #1
6
样例 #2
样例输入 #2
5 2
3
1
5
3
样例输出 #2
4
提示
【数据范围】
对于 100 % 100\% 100% 的数据, 1 ≤ M < N ≤ 10 1 \le M < N \le 10 1≤M<N≤10, 1 ≤ J ≤ 20 1 \le J \le 20 1≤J≤20。
【说明】
本题分值按 COCI 原题设置,满分 50 50 50。
题目译自 COCI2011-2012 CONTEST #1 T1 JABUKE。
Scratch实现
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容