#ATarc109d. [ARC109D] く

[ARC109D] く

题目描述

有一个由 2×1010+12\times 10^{10} + 12×1010+12\times 10^{10} + 1 列组成的网格棋盘。行号从上到下依次为 1010,,1010-10^{10}, \dots, 10^{10},列号从左到右依次为 1010,,1010-10^{10}, \dots, 10^{10}。在这个棋盘上有 33 个石子,分别放在二维平面上的点 (0,0), (1,0), (0,1)(0, 0),\ (1, 0),\ (0, 1)

33 个石子满足以下条件时,称它们“呈现折线形排列”:

  • 每个石子都放在整数坐标点上;
  • 每个石子都与另一个石子相邻(即距离为 11 的位置上有另一个石子);
  • 33 个石子不在同一直线上。

特别地,初始的石子排列 (0,0), (1,0), (0,1)(0, 0),\ (1, 0),\ (0, 1) 就是折线形排列。

你可以任意选择一个石子,并将其移动到任意位置。你可以进行任意多次这样的操作。但每次操作后,石子都必须保持折线形排列。请你用最少的操作次数,使得石子分别位于点 (ax,ay), (bx,by), (cx,cy)(ax, ay),\ (bx, by),\ (cx, cy)。保证在该状态下,石子仍然呈折线形排列。在此限制下,总能在有限次操作内达到目标。

给定 TT 组数据,请分别输出每组数据的最小操作次数。

输入格式

输入以如下格式从标准输入读入。

TT
case1\text{case}_1
\vdots
caseT\text{case}_T

每组数据格式如下:

ax ay bx by cx cyax\ ay\ bx\ by\ cx\ cy

输出格式

输出 TT 个值。第 ii 行输出第 ii 组数据对应的最小操作次数。

样例 1

输入

1
3 2 2 2 2 1

输出

4

样例 2

输入

10
0 0 1 0 0 1
1 0 0 1 1 1
2 -1 1 -1 1 0
1 -2 2 -1 1 -1
-1 2 0 2 -1 3
-1 -2 -2 -2 -2 -3
-2 4 -3 3 -2 3
3 1 4 2 4 1
-4 2 -4 3 -3 3
5 4 5 3 4 4

输出

0
1
2
3
4
5
6
7
8
9

说明/提示

注意

33 个石子是不可区分的。例如,最初在 (0,0)(0,0) 的石子,最终放在 (ax,ay), (bx,by), (cx,cy)(ax, ay),\ (bx, by),\ (cx, cy) 的任意一个位置都可以。

约束

  • 1T1031 \leq T \leq 10^3
  • ax,ay,bx,by,cx,cy109|ax|,|ay|,|bx|,|by|,|cx|,|cy| \leq 10^9
  • 当石子分别位于 (ax,ay), (bx,by), (cx,cy)(ax, ay),\ (bx, by),\ (cx, cy) 时,石子呈折线形排列

样例解释 1

# 表示石子。你可以用如下 44 次操作将石子移动到指定位置:

....    ....    ....    ..#.    ..##
#... -> ##.. -> .##. -> .##. -> ..#.
##..    .#..    .#..    ....    ....

由 ChatGPT 4.1 翻译