CF1811B.Conveyor Belts

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Conveyor Belts

题目描述

传送带矩阵 mnm_n 是一个 n×nn \times n 的矩阵,其中 nn 是一个偶数。该矩阵由若干同心的“带”组成,每一圈带都按顺时针方向移动。

换句话说,当 n=2n=2 时,传送带矩阵就是一个 2×22 \times 2 的矩阵,其所有格子构成一个长度为 44 的顺时针环路。对于任意自然数 k2k \ge 2,矩阵 m2km_{2k} 是通过在矩阵 m2k2m_{2k-2} 的外围添加一圈顺时针环路得到的。

如图所示为 8×88 \times 8 的传送带矩阵。你现在站在坐标为 x1,y1x_1, y_1 的格子上,想要到达坐标为 x2,y2x_2, y_2 的格子。如果某个格子位于第 xx 行第 yy 列,则其坐标为 x,yx, y

你每秒会自动沿着所在带的顺时针方向移动到下一个格子。你也可以随时花费 11 单位能量移动到相邻的格子(上下左右),这种移动是瞬时完成的,且你可以在任意时刻进行任意多次。

你的任务是计算,从坐标为 x1,y1x_1, y_1 的格子到坐标为 x2,y2x_2, y_2 的格子,所需花费的最小能量。

例如,对于 n=8n=8,你初始在坐标 1,31,3,目标是到达坐标 6,46,4。你可以立即进行 22 次能量移动,来到坐标 3,33,3,然后等待 88 秒后即可到达目标格子。

输入格式

第一行包含一个整数 tt1t2×1051 \le t \le 2 \times 10^5),表示测试用例的数量。

接下来是每个测试用例的描述。

每个测试用例包含一行,包含五个整数 nnx1x_1y1y_1x2x_2y2y_21x1,y1,x2,y2n1091 \le x_1, y_1, x_2, y_2 \le n \le 10^9),分别表示矩阵的大小、起点和终点的坐标。保证 nn 为偶数。

输出格式

对于每个测试用例,输出一行一个整数,表示从坐标 x1,y1x_1, y_1 到坐标 x2,y2x_2, y_2 所需花费的最小能量。

说明/提示

由 ChatGPT 4.1 翻译

样例

5
2 1 1 2 2
4 1 4 3 3
8 1 3 4 6
100 10 20 50 100
1000000000 123456789 987654321 998244353 500000004
0
1
2
9
10590032

在线编程 IDE

建议全屏模式获得最佳体验