import java.util.Scanner

import scala.collection.mutable
import scala.collection.mutable.ArrayBuffer

object Main {
  def main(args: Array[String]) {
    val result = solve(new Scanner(System.in))
    if (result.length > 0) println(result)
  }

  def solve(in: String): String = solve(new Scanner(in))

  def solve(sc: Scanner): String = {
    val n = sc.nextInt
    val v1 = new mutable.HashMap[Int, Int]()
    val v2 = new mutable.HashMap[Int, Int]()
    for (i <- 0 until n / 2) {
      val k1 = sc.nextInt
      v1(k1) = v1.getOrElse(k1, 0) + 1
      val k2 = sc.nextInt
      v2(k2) = v2.getOrElse(k2, 0) + 1
    }

    val l1 = v1.toList.sortBy(_._2).reverse.take(2)
    val l2 = v2.toList.sortBy(_._2).reverse.take(2)
    if (l1(0)._1 == l2(0)._1) {
      if (l1.length > 1) {
        val m1 = n - l1(0)._2 - l2(1)._2
        val m2 = n - l1(1)._2 - l2(0)._2
        List(m1, m2).min.toString
      } else (n / 2).toString
    } else {
      (n - l1(0)._2 - l2(0)._2).toString
    }
  }
}
