Codeforces Round 743 (Div. 1)
C
Paint
Codeforces
2700
原题
← BD →
翻译中…

You are given a $1$ by $n$ pixel image. The $i$-th pixel of the image has color $a_i$. For each color, the number of pixels of that color is at most $20$.

翻译中…

You can perform the following operation, which works like the bucket tool in paint programs, on this image:

翻译中…
  • pick a color — an integer from $1$ to $n$;
  • choose a pixel in the image;
  • for all pixels connected to the selected pixel, change their colors to the selected color (two pixels of the same color are considered connected if all the pixels between them have the same color as those two pixels).
翻译中…

Compute the minimum number of operations needed to make all the pixels in the image have the same color.

翻译中…

Input

翻译中…

Each test contains multiple test cases. The first line contains the number of test cases $t$ ($1 \le t \le 10^3$).

翻译中…

The first line of each test case contains a single integer $n$ ($1 \le n \le 3\cdot10^3$) — the number of pixels in the image.

翻译中…

The second line of each test case contains $n$ integers $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le n$) — the colors of the pixels in the image.

翻译中…

Note: for each color, the number of pixels of that color is at most $20$.

翻译中…

It is guaranteed that the sum of $n$ over all test cases does not exceed $3\cdot10^3$.

翻译中…

Output

翻译中…

For each test case, print one integer: the minimum number of operations needed to make all the pixels in the image have the same color.

翻译中…

Note

翻译中…

In the first example, the optimal solution is to apply the operation on the third pixel changing its color to $2$ and then to apply the operation on any pixel that has color $2$ changing its color and the color of all pixels connected to it to $1$. The sequence of operations is then: $[1, 2, 3, 2, 1] \to [1, 2, 2, 2, 1] \to [1, 1, 1, 1, 1]$.

翻译中…

In the second example, we can either change the $1$s to $2$s in one operation or change the $2$s to $1$s also in one operation.

翻译中…

In the third example, one possible way to make all the pixels have the same color is to apply the operation on the first, third and the fourth pixel each time changing its color to $2$.

翻译中…

样例

Input #1
3
5
1 2 3 2 1
4
1 1 2 2
5
1 2 1 4 2
Output #1
2
1
3
InputCopy OutputCopy
题目信息
题号
1572C
时间限制
1 s
内存限制
256 MB
标签
动态规划
贪心

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。