C - /\/\/\/ 解説 /

実行時間制限: 2 sec / メモリ制限: 1024 MB

配点 : 300

問題文

数列 a_1,a_2,... ,a_n が以下の条件を満たすとき、 /\/\/\/ と呼ぶことにします。

  • i = 1,2,..., n-2 について、a_i = a_{i+2}
  • 数列に現れる数はちょうど 2 種類

偶数長の数列 v_1,v_2,...,v_n が与えられます。 要素をいくつか書き換えることでこの数列を /\/\/\/ にしたいです。 書き換える要素の数は最小でいくつになるか求めてください。

制約

  • 2 \leq n \leq 10^5
  • n は偶数
  • 1 \leq v_i \leq 10^5
  • v_i は整数

入力

入力は以下の形式で標準入力から与えられる。

n
v_1 v_2 ... v_n

出力

書き換える要素数の最小値を出力してください。


入力例 1

4
3 1 3 2

出力例 1

1

数列 3,1,3,2 は /\/\/\/ ではありませんが、1 要素書き換えることで /\/\/\/ にすることができます。 例えば、4 要素目を書き換えて 3,1,3,1 とすればよいです。


入力例 2

6
105 119 105 119 105 119

出力例 2

0

数列 105,119,105,119,105,119 は /\/\/\/ です。


入力例 3

4
1 1 1 1

出力例 3

2

数列 1,1,1,11 種類の数からなる数列であるため、 /\/\/\/ ではありません。

Score : 300 points

Problem Statement

A sequence a_1,a_2,... ,a_n is said to be /\/\/\/ when the following conditions are satisfied:

  • For each i = 1,2,..., n-2, a_i = a_{i+2}.
  • Exactly two different numbers appear in the sequence.

You are given a sequence v_1,v_2,...,v_n whose length is even. We would like to make this sequence /\/\/\/ by replacing some of its elements. Find the minimum number of elements that needs to be replaced.

Constraints

  • 2 \leq n \leq 10^5
  • n is even.
  • 1 \leq v_i \leq 10^5
  • v_i is an integer.

Input

Input is given from Standard Input in the following format:

n
v_1 v_2 ... v_n

Output

Print the minimum number of elements that needs to be replaced.


Sample Input 1

4
3 1 3 2

Sample Output 1

1

The sequence 3,1,3,2 is not /\/\/\/, but we can make it /\/\/\/ by replacing one of its elements: for example, replace the fourth element to make it 3,1,3,1.


Sample Input 2

6
105 119 105 119 105 119

Sample Output 2

0

The sequence 105,119,105,119,105,119 is /\/\/\/.


Sample Input 3

4
1 1 1 1

Sample Output 3

2

The elements of the sequence 1,1,1,1 are all the same, so it is not /\/\/\/.