#P16563. [Bapc2020]Aquarium Arrangement
[Bapc2020]Aquarium Arrangement
题目描述
你是“比荷卢食人鱼与鲶鱼水族馆”的员工。水族馆希望扩充目前并不丰富的水生动物展览,但资金不足。为了帮助水族馆进行宣传,你需要给两个展区拍照。
鲶鱼十分配合,因此第一张照片拍得很顺利。对于食人鱼展区,你已经设计好了一种适合拍照的排列方式。然而,想让食人鱼移动,唯一的方法就是把手指冒险伸入水中,用它们感兴趣的方式进行引诱。你的目标是在不失去手指的前提下,尽快把所有食人鱼移动到目标位置。
食人鱼展区从左到右划分为位置 。展区内共有 条食人鱼,每个位置至多有一条食人鱼。
你可以把手指伸入任意一个当前没有食人鱼的位置。此时:
- 手指左侧距离最近的食人鱼会向手指游来;
- 手指右侧距离最近的食人鱼也会向手指游来;
- 这两条食人鱼每秒向手指方向移动一个位置;
- 其余食人鱼保持不动。
如果某条食人鱼到达了手指所在的位置,它就会咬到你的手指。因此,你必须在这种情况发生之前把手指移开。把手指从水中抽出并立即放入另一个位置不消耗时间。
例如,假设食人鱼位于位置 。如果把手指放在位置 ,一秒后它们将位于位置 。此时你必须立即把手指移开,否则位置 的食人鱼再过一秒就会咬到你。接下来,如果把手指放在位置 ,只有位置 的食人鱼会移动,并在一秒后到达位置 。
请计算,把所有食人鱼移动到目标位置所需的最少秒数。
输入格式
输入包含三行:
第一行包含两个整数 和 :
- ,表示位置数量;
- ,表示食人鱼数量。
第二行包含 个整数:
表示食人鱼当前所在的位置。
第三行包含 个整数:
表示食人鱼的目标位置。
输出格式
如果能够完成目标排列,输出所需的最少秒数。
如果无法完成,输出:
impossible
样例 1
输入
9 3
3 7 9
3 5 9
输出
4
样例 2
输入
8 3
1 5 8
2 4 7
输出
impossible
样例 3
输入
20 6
1 4 7 10 13 20
2 5 8 11 14 17
输出
17