#XX05. Dice Roll Sequence

Dice Roll Sequence

题目描述

考虑下述立方体 DD,其中数字 xx7x7-x 分别位于相对的面上:

一个长度为 nn,元素均为 1166 之间整数的序列 bb,如果满足以下条件,则称为一个“骰子掷法序列”:

  • 任意相邻两个元素所在的面在立方体中必须是相邻的(即“相邻面”^\ast)。

例如,[1,4,2][1, 4, 2] 是一个骰子掷法序列,但 [3,4,6,3][3, 4, 6, 3] 并不是,因为 3344 不在相邻的骰子面上。另外,[2,2,4][2, 2, 4] 也不是骰子掷法序列,因为 2222 属于同一个面,并不相邻。

给定一个长度为 nn 的序列 aa,其元素均在 1166 之间。你可以对其进行如下操作任意次(包括零次):

  • 选择一个下标 1in1 \le i \le n 和一个数字 1x61 \le x \le 6,然后将 aia_i 改为 xx

请你求出,至少需要多少次操作才能将 aa 变为一个骰子掷法序列。

^\ast 立方体的两个面 SSTT,如果正好共享一条棱,则称它们是“相邻面”。注意,这也意味着 STS\neq T

输入格式

每组数据包含多个测试用例。第一行为测试用例的数量 tt1t1041 \le t \le 10^4)。接下来依次给出每个测试用例:

每组测试用例的第一行为一个整数 nn1n3×1051 \le n \le 3 \times 10^5)。

第二行为 nn 个整数 a1,a2,,ana_1, a_2, \ldots, a_n1ai61 \le a_i \le 6)。

保证所有测试用例中 nn 的总和不超过 3×1053 \times 10^5

输出格式

对于每个测试用例,输出将 aa 变为骰子掷法序列所需的最少操作次数。

输入输出样例 #1

输入 #1

3
3
1 4 2
4
3 4 6 3
10
6 1 4 3 1 3 2 5 4 4

输出 #1

0
1
4

数据范围

  • 1t1041 \le t \le 10^4
  • 1n3×1051 \le n \le 3 \times 10^5
  • 1ai61 \le a_i \le 6
  • 所有测试用例中 nn 的总和不超过 3×1053 \times 10^5

子任务

  • 20%20\% 的数据满足序列已经是骰子掷法序列;
  • 另有 20%20\% 的数据满足 n3000\sum n \le 3000
  • 其余 60%60\% 的数据满足原始数据范围。