AT_abc273_f [ABC273F] Hammer 2
题目描述
高桥君现在在数轴的原点。他想移动到坐标 $X$ 处的终点。
在数轴上有 $N$ 面墙和 $N$ 把锤子。
- 在坐标 $Y_1,Y_2,\dots,Y_N$ 处分别有类型为 $1,2,\dots,N$ 的墙。
- 一开始,高桥君无法穿越任何墙。
- 在坐标 $Z_1,Z_2,\dots,Z_N$ 处分别有类型为 $1,2,\dots,N$ 的锤子。
- 当高桥君到达有锤子的坐标时,他会获得该处的锤子。
- 类型 $i$ 的锤子只能用来破坏类型 $i$ 的墙。只有在获得类型 $i$ 的锤子后,才能破坏并通过类型 $i$ 的墙。
请判断高桥君是否能够到达终点。如果可以,请输出最小的移动距离。
输入格式
输入通过标准输入按以下格式给出。
> $N$ $X$ $Y_1$ $Y_2$ $\dots$ $Y_N$ $Z_1$ $Z_2$ $\dots$ $Z_N$
输出格式
如果高桥君可以到达终点,请输出最小的移动距离(整数)。
如果无法到达,请输出 $-1$。
说明/提示
## 限制条件
- 所有输入均为整数。
- $1\leq N\leq 1500$
- $1\leq |X|,|Y_i|,|Z_i|\leq 10^9$
- 总共 $2\times N+1$ 个坐标 $X,Y_i,Z_i$ 互不相同。
## 样例解释 1
按照以下步骤,高桥君可以以 $40$ 的最小移动距离到达终点:
- 从坐标 $0$ 开始。
- 移动到坐标 $3$,获得类型 $3$ 的锤子。
- 移动到坐标 $5$,获得类型 $1$ 的锤子。
- 移动到坐标 $-2$,破坏类型 $1$ 的墙。
- 移动到坐标 $-5$,破坏类型 $3$ 的墙。
- 移动到坐标 $-10$,获得类型 $2$ 的锤子。
- 移动到坐标 $8$,破坏类型 $2$ 的墙。
- 移动到坐标 $10$,到达终点。
# 样例解释 2
有时不需要获得任何锤子或破坏任何墙就能到达终点。
# 样例解释 3
高桥君无法获得类型 $1$ 的锤子,因此也无法到达终点。
由 ChatGPT 4.1 翻译