CF1761B.Elimination of a Ring

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

Elimination of a Ring

题目描述

定义一个大小为 nn 的环状序列为一个长度为 nn 的数组 ss,其中 sns_ns1s_1 相邻。

Muxii 有一个由大小为 nn 的环状序列 aa 表示的戒指。

然而,这个戒指本身讨厌相邻元素相等。因此,如果序列中任意时刻有两个相邻元素相等,其中一个会被立即擦除。最初序列中不包含相等的相邻元素。

Muxii 可以重复进行如下操作,直到序列变为空:

  • 选择 aa 中的一个元素并将其擦除。

例如,如果戒指为 [1,2,4,2,3,2][1, 2, 4, 2, 3, 2],Muxii 擦除元素 44,那么戒指会擦除其中一个等于 22 的元素,戒指会变为 [1,2,3,2][1, 2, 3, 2]

Muxii 想知道他最多可以进行多少次操作。

注意,对于大小为 11 的环,其唯一的元素不被视为与自身相邻(因此不会被立即擦除)。

输入格式

每组测试包含多组测试用例。第一行包含一个整数 tt1t1001\leq t\leq 100)——表示测试用例的数量。接下来是每组测试用例的描述。

每组测试用例的第一行包含一个整数 nn1n1001\leq n\leq 100)——环状序列的大小。

每组测试用例的第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n1ain1\leq a_i\leq n)——表示序列本身。

保证 1i<n1\leq i<naiai+1a_i\ne a_{i+1}

n>1n>1 时,保证 ana1a_n\ne a_1

输出格式

对于每组测试用例,输出一个整数,表示 Muxii 最多可以进行的操作次数。

说明/提示

在第一个测试用例中,你可以先擦除第二个元素,然后按任意顺序依次擦除剩下的元素。总共可以进行 44 次操作。注意,如果你先擦除第一个元素,则序列会变为 [2,3,2][2,3,2],然后立即变为 [2,3][2,3]

在第二个测试用例中,你可以先擦除第一个元素,序列变为 [2,1][2,1]。然后你可以按任意顺序依次擦除剩下的所有元素。

由 ChatGPT 4.1 翻译

样例

3
4
1 2 3 2
4
1 2 1 2
1
1
4
3
1

在线编程 IDE

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