AT_kupc2017_f 575

Description

[problemUrl]: https://atcoder.jp/contests/kupc2017/tasks/kupc2017_f 数列 $ s $ に対して、その数列を構成する数を $ 0 $ 個以上取り除き、残った数を元の順番で並べて得られる数列を $ s $ の部分列と呼びます。 たとえば、$ (4,\ 2,\ 1) $ や $ (7,\ 4,\ 3,\ 2,\ 1) $ や $ (空列) $ は $ (7,\ 4,\ 3,\ 2,\ 1) $ の部分列ですが、$ (1,\ 2) $ は $ (7,\ 4,\ 3,\ 2,\ 1) $ の部分列ではありません。 長さ $ n $ の数列 $ s $ について、次の条件を満たす空でない数列 $ a $, $ b $, $ c $ が存在するとき、数列 $ s $ を五七五列であるといいます。 - $ a $, $ b $, $ c $ を連結した数列は $ (1,\ 2,\ ...,\ n) $ の順列である。 - $ min_i(a_i) $ < $ min_i(b_i) $ < $ min_i(c_i) $ - $ Σs_{a_i}\ =\ 5 $ - $ Σs_{b_i}\ =\ 7 $ - $ Σs_{c_i}\ =\ 5 $ たとえば、数列 $ ex=(ex_1,\ ex_2,\ ex_3,\ ex_4)=(5,\ 3,\ 5,\ 4) $ は五七五列ですが、$ (5,\ 5,\ 7) $ は五七五列ではありません。$ ex $ については $ a=(1) $, $ b=(2,\ 4) $, $ c=(3) $ の $ 3 $ つの数列が五七五列の条件を満たします。 項数 $ N $ の数列 $ x=(x_1,\ x_2,\ ...,\ x_N) $ が与えられます。各 $ x_i $ は **$ 2\ \leq\ x_i\ \leq\ 7 $** を満たします。 この数列 $ x $ から、五七五列である部分列を $ 1 $ つずつ取り除くとき、最大でいくつの五七五列を取り除けるか求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ x_1 $ $ x_2 $ $ ... $ $ x_N $

Output Format

取り除ける五七五列の最大個数を $ 1 $ 行で出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ N\ \leq\ 100 $ - $ 2\ \leq\ x_i\ \leq\ 7 $ - $ N $, $ x_i $ は整数である。 ### Sample Explanation 1 $ (2,\ 3,\ 5,\ 4,\ 3) $ は五七五列です。$ a=(1,\ 5) $, $ b=(2,\ 4) $, $ c=(3) $ の $ 3 $ つの数列が五七五列の条件を満たします。 ### Sample Explanation 2 まず、$ x $ の第 $ 1 $, $ 3 $, $ 5 $, $ 6 $ 項からなる $ (5,\ 2,\ 5,\ 5) $ の五七五列が取り除けます。 $ (5,\ 2,\ 5,\ 5) $ については、例えば $ a=(1) $, $ b=(2,\ 4) $, $ c=(3) $ の $ 3 $ つの数列が五七五列の条件を満たします。 $ x $ から第 $ 1 $, $ 3 $, $ 5 $, $ 6 $ 項を取り除いた残りの列は $ (6,\ 3,\ 5,\ 7,\ 5,\ 3) $ となります。 次に、残りの列の第 $ 3 $, $ 4 $, $ 5 $ 項からなる $ (5,\ 7,\ 5) $ の五七五列が取り除けます。