CF1987F2.Interesting Problem (Hard Version)
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
这是该问题的困难版本。两种版本的唯一区别在于 n 的限制。只有当你同时解决了两个版本的问题时,才能进行 Hack。
给定一个长度为 n 的整数数组 a。
每次操作,你需要执行以下两步:
- 选择一个下标 i,满足 1≤i<∣a∣ 且 ai=i。
- 从数组中移除 ai 和 ai+1,并将剩余部分拼接起来。
请你求出最多可以执行上述操作多少次。
输入格式
每组测试数据包含多个测试用例。输入的第一行包含一个整数 t(1≤t≤100),表示测试用例的数量。接下来的每组测试用例描述如下:
每个测试用例的第一行包含一个整数 n(1≤n≤800),表示数组 a 的长度。
第二行包含 n 个整数 a1,a2,…,an(1≤ai≤n),表示数组 a 的元素。
保证所有测试用例中 n 的总和不超过 800。
输出格式
对于每个测试用例,输出一个整数,表示最多可以执行操作的次数。
输入输出样例
输入#1
6 5 1 5 3 2 4 8 2 1 3 4 5 6 7 8 3 1 2 3 4 1 2 4 4 5 4 4 1 3 5 1 1
输出#1
2 3 1 2 0 0
说明/提示
在第一个测试用例中,一种可能的最优操作序列为 [1,5,3,2,4]→[1,5,4]→[4]。
在第三个测试用例中,一种可能的最优操作序列为 [1,2,3]→[1]。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?