P12367 [蓝桥杯 2022 省 Python B] 蜂巢

题目描述

蜂巢由大量的六边形拼接而成,定义蜂巢中的方向为:$0$ 表示正西方向,$1$ 表示西偏北 $60^\circ$,$2$ 表示东偏北 $60^\circ$,$3$ 表示正东,$4$ 表示东偏南 $60^\circ$,$5$ 表示西偏南 $60^\circ$。 对于给定的一点 $O$,我们以 $O$ 为原点定义坐标系,如果一个点 $A$ 由 $O$ 点先向 $d$ 方向走 $p$ 步再向 $(d+2) \bmod 6$ 方向($d$ 的顺时针 $120^\circ$ 方向)走 $q$ 步到达,则这个点的坐标定义为 $(d, p, q)$。在蜂窝中,一个点的坐标可能有多种。 下图给出了点 $B(0, 5, 3)$ 和点 $C(2, 3, 2)$ 的示意。 ![](https://cdn.luogu.com.cn/upload/image_hosting/n36fvy4l.png) 给定点 $(d_1, p_1, q_1)$ 和点 $(d_2, p_2, q_2)$, 请问他们之间最少走多少步可以到达?

输入格式

输入一行包含 $6$ 个整数 $d_1, p_1, q_1, d_2, p_2, q_2$ 表示两个点的坐标, 相邻两个整数之间使用一个空格分隔。

输出格式

输出一行包含一个整数表示两点之间最少走多少步可以到达。

说明/提示

### 评测用例规模与约定 - 对于 $25\%$ 的评测用例, $p_1, p_2 \leq 10^3$; - 对于 $50\%$ 的评测用例, $p_1, p_2 \leq 10^5$; - 对于 $75\%$ 的评测用例, $p_1, p_2 \leq 10^7$; - 对于所有评测用例, $0 \leq d_1, d_2 \leq 5$, $0 \leq q_1 < p_1 \leq 10^9$, $0 \leq q_2 < p_2 \leq 10^9$。