(CSU - 1729)齿轮传动
Time Limit: 1 Sec Memory Limit: 128 Mb Submitted: 204 Solved: 97
Description
你在一家机械厂打工,你的老板让你把一组齿轮种类序列a1,a2,..,an取走几个让齿轮的传动比为1:1,老板要求你取走最少的齿轮,不能改变齿轮原来的相对位置,满足条件,即齿轮种类组合起来是回文串。
Input
多组数据,第一行有一个整数T , 表示有T组数据。(T<=100)
以下每组数据第一行有一个整数n , 表示n个齿轮(1<=n<=1000)
接下来一行有n个整数a1,a2,…,an表示齿轮种类 (1<=ai<=10000)
Output
取走的最少齿轮数
Sample Input
1
4
1 2 3 1
Sample Output
1
思路:有两种方法可以求解,一种是先求出最长回文子序列,然后数字总个数-最长回文子序列就是要求的答案,其中最长回文子序列可以就是一个模板题;还有一种直接dp,设f[i][j]表示区间[i,j]需要删除的数字个数,那么显然可以得到状态转移方程:①a[i]==a[j],f[i][j]=f[i+1][j-1],②a[i]!&