题库练习 Vladik and cards
← 上一题 下一题 →

A10741 | Vladik and cards

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Vladik was bored on his way home and decided to play the following game. He took $n$ cards and put them in a row in front of himself. Every card has a positive integer number not exceeding $8$ written on it. He decided to find the longest subsequence of cards which satisfies the following conditions:

- the number of occurrences of each number from $1$ to $8$ in the subsequence doesn't differ by more then $1$ from the number of occurrences of any other number. Formally, if there are $c_{k}$ cards with number $k$ on them in the subsequence, than for all pairs of integers ![](/uploads/acgo/image/86b8c882044a7a56_5458decca165.jpeg) the condition $|c_{i}-c_{j}|<=1$ must hold.
- if there is at least one card with number $x$ on it in the subsequence, then all cards with number $x$ in this subsequence must form a continuous segment in it (but not necessarily a continuous segment in the original sequence). For example, the subsequence $[1,1,2,2]$ satisfies this condition while the subsequence $[1,2,2,1]$ doesn't. Note that $[1,1,2,2]$ doesn't satisfy the first condition.

Please help Vladik to find the length of the longest subsequence that satisfies both conditions.

输入格式

The first line contains single integer $n$ ( $1<=n<=1000$ ) — the number of cards in Vladik's sequence.

The second line contains the sequence of $n$ positive integers not exceeding $8$ — the description of Vladik's sequence.

输出格式

Print single integer — the length of the longest subsequence of Vladik's sequence that satisfies both conditions.

输入输出样例

输入 #1
3
1 1 1
输出 #1
1
输入 #2
8
8 7 6 5 4 3 2 1
输出 #2
8
输入 #3
24
1 8 1 2 8 2 3 8 3 4 8 4 5 8 5 6 8 6 7 8 7 8 8 8
输出 #3
17
C++ 编辑器
输入
输出