Sanghun は $N$ 個の立方体のサイコロを持っています。順にサイコロ $1$、サイコロ $2$、$\ldots$、サイコロ $N$ と呼びます。
すべてのサイコロの各面には $1$ 以上 $6$ 以下の整数が一つ書かれています。同じサイコロの異なる面の数字は必ず異なり、向かい合う二面の数字の和は必ず $7$ です。
Sanghun は $N$ 個のサイコロで塔を作ろうとしています。具体的な手順は次のとおりです。
$N$ 個のサイコロをすべて床に転がします。
各サイコロの上面の数字を記録します。サイコロ $1$ から $N$ の順に $A_1,A_2,\ldots,A_N$ とします。
床のサイコロから一つ以上を選び、机の上に新しい塔を一つ作ります。床から持ち上げて移動できますが、向きを変えてはいけません。選んだサイコロを積む順序は自由ですが、すべて鉛直方向に一列に積む必要があります。接する二面の数字は等しくなければなりません。
床にサイコロが残らなくなるまで手順 3 を繰り返します。
例えば、次のように進められます。
Sanghun が床に四つのサイコロを転がしたところ、サイコロ $1$ から $4$ の上面の数字はそれぞれ $3,3,5,4$ でした。
Sanghun は床からサイコロ $1$、$2$、$4$ を選び、下から $1$、$4$、$2$ の順に積みました。サイコロ $1$ の上面と $4$ の下面にはともに $3$ が書かれ、この二面が接しています。また、サイコロ $4$ の上面と $2$ の下面にはともに $4$ が書かれ、この二面が接しています。
Sanghun は床に残ったサイコロ $3$ を選び、一つだけからなる塔を作りました。
床にサイコロがなくなったので終了します。Sanghun は合計二つの塔を作りました。
Sanghun は積み方を適切に選んで塔の数を最小化したいと考えています。$N$ 個のサイコロを転がした後の各上面の数字が与えられたとき、塔の数の最小値を求めてください。
制約
与えられる数はすべて整数です。
$2\le N\le200\,000$。
$1\le i\le N$ を満たす各整数 $i$ について $1\le A_i\le6$。
小課題
1.(8 点)$N=2$。
2.(28 点)上面の数字は $3$ または $4$ です。すなわち、$1\le i\le N$ を満たす各整数 $i$ について $A_i=3$ または $A_i=4$ です。
3.(31 点)異なる任意の整数 $x,y$($1\le x,y\le6$)について、上面が $x$ のサイコロの数と上面が $y$ のサイコロの数は異なります。
4.(33 点)追加の制約はありません。
入力
最初の行に整数 $N$ が与えられます。
次の行に $N$ 個の整数 $A_1,A_2,\ldots,A_N$ が順に空白区切りで与えられます。
出力
最初の行に、Sanghun が積み方を適切に選んだときに作る塔の数の最小値を出力してください。
入出力例
入力 1
4 3 3 5 4
出力 1
2
入力 2
2 3 4
出力 2
1
入力 3
5 1 1 6 1 1
出力 3
3