4492: 扑克洗牌

内存限制:256 MB 时间限制:8 S
题面:传统 评测方式:文本比较 上传者:
提交:2 通过:1

题目描述

Nanarikom 在洗扑克牌。

Nanarikom 有 nn 张扑克牌。初始状态下,牌堆中第 ii 张扑克牌上的数字为 ii

为了进行洗牌,Nanarikom 每次会进行以下操作中的一种:

  • 从牌堆顶取出 11 张牌,插入到牌堆的任意位置中。
  • 从牌堆底取出 11 张牌,插入到牌堆的任意位置中。

在操作过程中,牌堆内未被取出的牌相对顺序保持不变。

现在,Nanarikom 想要衡量牌堆的混乱程度。具体地,对于给定的牌堆,Nanarikom 想知道,从初始状态牌堆变换到给定牌堆所需的最小操作次数。

你需要回答 Nanarikom 的 TT 组询问。

输入格式

第一行包含一个整数 TT1 \leq T \leq 10^51T105),代表测试数据组数。对于每组测试数据:

  • 第一行包含一个整数 nn1 \leq n \leq 10^51n105),代表扑克牌的数量;
  • 第二行包含 nn 个整数 a_1, a_2, \dots, a_na1,a2,,an1 \leq a_i \leq n1ain),代表给定的牌堆顺序。

输入数据保证 \sum n \leq 10^6n106,且 a_1, a_2, \dots, a_na1,a2,,an 是一个排列。

输出格式

对于每组测试数据,输出一个整数,代表完成变换的最小操作次数。

输入样例 复制

1
5
4 1 2 5 3

输出样例 复制

2