#P11013. 「ALFR Round 4」C 粉碎
「ALFR Round 4」C 粉碎
题目描述
斌宝在玩纸牌。起初,他有 张牌,第 张牌的点数为 。
斌宝会重复执行 轮以下操作,第 轮操作如下:
- 斌宝需要选择将第 张牌置于牌堆的最左边或者最右边;
- 若牌堆中存在两张点数相同的牌,则斌宝会立即将两张牌之间的所有牌从牌堆取出,扔进碎纸机(包括这两张牌本身)。
总是会先执行插入操作再执行粉碎操作。
牌堆初始为空。
你需要告诉斌宝他最多能粉碎多少张牌。
输入格式
第一行,一个整数 ,表示数据组数。
对于每组数据:
第一行一个整数 。
第二行 个数表示 。
输出格式
对于每组数据,输出斌宝最多能粉碎多少张牌。
4
8
1 3 3 1 2 1 2 2
8
3 2 2 1 2 1 2 1
6
1 2 1 2 1 2
6
1 2 3 4 5 6
8
7
6
0
提示
样例解释
初始牌堆:
放入 :;
放入 :;
放入 :,然后粉碎:;
放入 :;
放入 :;
放入 :,然后粉碎:;
放入 :;
放入 :,然后粉碎:;
所有牌均被粉碎。
数据范围
子任务 | 分值 | 限制 |
---|---|---|
且 在 内随机生成 | ||
- |
对于 的数据,,,。