Language: C++

##################
###   system   ###
##################
type lint = int64
template exit = quit 0


####################
###   operator   ###
####################
proc less[T1,T2]( x :T1, y :T2 ) :bool = x < y
proc more[T1,T2]( x :T1, y :T2 ) :bool = x > y


####################
###   iterator   ###
####################
iterator range( L, R :int ) :int =
    for i in L..<R:
        yield i

iterator range( N :int ) :int =
    for i in range(0, N):
        yield i

iterator reverse( L, R :int ) :int =
    var i = R
    while i > L:
        i.dec
        yield i

iterator reverse( N :int ) :int =
    for i in reverse(0, N):
        yield i


################
###   vect   ###
################
type vect[T] = seq[T]

proc Vect[T]( n :int ): vect[T] =
    newSeq[T]( result, n )

proc elem[T]( e :T, s :varargs[T] ) :bool =
    for a in s:
        if e == a: return true
    return false


################
###   tens   ###
################
type tens[T] = object
    data :vect[T]
    shape :vect[int]

proc Tens[T]( S :varargs[int] ) :tens[T] =
    var N :int = 1
    for s in S: N *= s
    result.data = Vect[T](N)
    result.shape = @S

proc `[]`[T]( t :tens[T], s :varargs[int] ) :T =
    var n = 0
    var r = 1
    for i in reverse(s.len):
        n += s[i] * r
        r *= t.shape[i]
    return t.data[n]

proc `[]=`[T]( t :var tens[T], s :varargs[int], e :T ) =
    var n = 0
    var r = 1
    for i in reverse(s.len):
        n += s[i] * r
        r *= t.shape[i]
    t.data[n] = e


#################
###   stack   ###
#################
type stack[T] = object
    data :vect[T]

proc Stack[T]() :stack[T] =
    result.data = Vect[T] 0

proc `$`[T]( s :stack[T] ) :string = $s.data
proc exist[T]( s :stack[T] ) :bool = s.data.len > 0
proc push[T]( s :var stack[T], e :T ) = s.data.add e
proc front[T]( s :stack[T] ) :T = s.data[s.data.len - 1]
proc trash[T]( s :var stack[T] ) = s.data.setLen(s.data.len - 1)
proc pop[T]( s :var stack[T] ) :T =
    result = s.front
    s.trash


####################
###   priority   ###
####################
type priority[T] = object
    data :vect[T]
    compare :proc(x,y:T):bool

proc Priority[T]() :priority[T] =
    result.data = Vect[T](1)
    result.compare = less

proc Priority[T]( compare :proc(x,y:T):bool ) :priority[T] =
    result.data = Vect[T](1)
    result.compare = compare

template parent( n :int ) :int = n div 2
template left( n :int ) :int = n * 2
template right( n :int ) :int = n * 2 + 1

proc exist[T]( p :priority[T] ) :bool = p.data.len > 0
proc push[T]( p :var priority[T], e :T ) =
    var n = p.data.len
    p.data.add(e)
    while n.parent != 0 and p.compare( p.data[n], p.data[n.parent] ):
        swap( p.data[n], p.data[n.parent] )
        n = n.parent
proc front[T]( p :priority[T] ) :T = p.data[1]
proc trash[T]( p :var priority[T] ) =
    let N = p.data.len - 1
    p.data[1] = p.data[N]
    p.data.setLen(N)
    var n = 1
    while true:
        if n.left >= N: break
        if n.right >= N:
            if p.compare( p.data[n], p.data[n.left] ): break
            swap( p.data[n], p.data[n.left] )
            n = n.left
            continue
        if not p.compare( p.data[n.left], p.data[n] ) and
           not p.compare( p.data[n.right], p.data[n] ):
            break
        if p.compare( p.data[n.left], p.data[n.right] ):
            swap( p.data[n], p.data[n.left] )
            n = n.left
        else:
            swap( p.data[n], p.data[n.right] )
            n = n.right
proc pop[T]( p :var priority[T] ) :T =
    result = p.front
    p.trash


################
###   mint   ###
################
const MOD :int = 1000000007
type mint = distinct int

proc Mint[I]( n :I ) :mint =
    var n = n.int mod Mod
    if n < 0: n = n + MOD
    return n.mint

proc `$`( m :mint ) :string = $m.int
proc `+`[I]( m: mint, n: I ) :mint = (m.int + n.int).Mint
proc `-`[I]( m: mint, n: I ) :mint = (m.int - n.int).Mint
proc `*`[I]( m: mint, n: I ) :mint = (m.int * n.int).Mint
proc `div`[I]( m :mint, n :I ) :mint =
    var
        a = n.int
        b = MOD
        u = 1
        v = 0
    while b > 0:
        var t = a div b
        a -= t * b
        u -= t * v
        swap( a, b )
        swap( u, v )
    return m * u


##################
###   number   ###
##################
proc `^`[T](n :T, m :int) :T =
    var n = n
    var m = m
    result = 1.T
    while m > 0:
        if m mod 2 != 0: result = result * n
        n = n * n
        m = m div 2

proc fact[I]( n :I ) :I =
    var memo {.global.} :seq[I] = @[I(1)]
    if n.int >= memo.len:
        let m :int = memo.len
        memo.setLen(n.int + 1)
        for i in m..n.int:
            memo[i] = memo[i-1] * i
    return memo[n.int]


################
###   sort   ###
################
proc sort[T]( S :var openArray[T], compare :proc(x,y:T):bool ) =
    var stack = Stack[ (bool,int,int) ]()
    stack.push( (true, 0, S.len) )
    while stack.exist:
        var (B, L, R) = stack.pop
        if R - L < 2: continue
        if B:
            stack.push( (false, L, R) )
            stack.push( (true, L, (L+R) div 2) )
            stack.push( (true, (L+R) div 2, R) )
            continue

        var temp = Vect[T]( (L+R) div 2 - L )
        for i in range( temp.len ): temp[i] = S[L+i]
        var (l, r) = (0, (L+R) div 2)
        for i in range(L,R):
            if r == R or l != temp.len and compare(temp[l], S[r] ):
                S[i] = temp[l]
                l.inc
            else:
                S[i] = S[r]
                r.inc


proc sort[T]( S :var openArray[T] ) =
    S.sort less

proc argMax[T]( V :openArray[T] ) :int =
    var max = T.low
    for i, e in V:
        if e > max:
            result = i
            max = e


################
###   read   ###
################
proc read( T :typedesc ) :T =
    when T is char:
        proc getchar() :char {.header:"stdio.h",importc:"getchar".}
        result = getchar()

    when T is string:
        result = ""
        while true:
            var c = char.read
            if c.elem( ' ', '\10', '\255' ): break
            result.add c

    when T is (int or lint):
        result = 0
        while true:
            var c = char.read
            if c < '0' or '9' < c: break
            result *= 10
            result += c.int() - '0'.int()

    when T is tuple:
        for r in result.fields:
            r = r.type.read

proc read( T :typedesc, N :int ) :vect[T] =
    result = Vect[T](N)
    for i in range(N):
        result[i] = T.read


##########################
####                  ####
####       main       ####
####                  ####
##########################

let
    M = 100000
    N = int.read div 2

var
    L = Vect[(int,int)]( M )
    R = Vect[(int,int)]( M )

for i in range(M):
    L[i][1] = i
    R[i][1] = i

for i in range(N):
    L[int.read - 1][0].inc
    R[int.read - 1][0].inc

L.sort more
R.sort more

if L[0][1] == R[0][1]:
    echo min(
        N - L[0][0] + N - R[1][0],
        N - L[1][0] + N - R[0][0]
    )
else:
    echo N - L[0][0] + N - R[0][0]


Compiler output:
a.cc:1:1: error: stray '##' in program
    1 | ##################
      | ^~
a.cc:1:3: error: stray '##' in program
    1 | ##################
      |   ^~
a.cc:1:5: error: stray '##' in program
    1 | ##################
      |     ^~
a.cc:1:7: error: stray '##' in program
    1 | ##################
      |       ^~
a.cc:1:9: error: stray '##' in program
    1 | ##################
      |         ^~
a.cc:1:11: error: stray '##' in program
    1 | ##################
      |           ^~
a.cc:1:13: error: stray '##' in program
    1 | ##################
      |             ^~
a.cc:1:15: error: stray '##' in program
    1 | ##################
      |               ^~
a.cc:1:17: error: stray '##' in program
    1 | ##################
      |                 ^~
a.cc:2:1: error: stray '##' in program
    2 | ###   system   ###
      | ^~
a.cc:2:3: error: stray '#' in program
    2 | ###   system   ###
      |   ^
a.cc:2:16: error: stray '##' in program
    2 | ###   system   ###
      |                ^~
a.cc:2:18: error: stray '#' in program
    2 | ###   system   ###
      |                  ^
a.cc:3:1: error: stray '##' in program
    3 | ##################
      | ^~
a.cc:3:3: error: stray '##' in program
    3 | ##################
      |   ^~
a.cc:3:5: error: stray '##' in program
    3 | ##################
      |     ^~
a.cc:3:7: error: stray '##' in program
    3 | ##################
      |       ^~
a.cc:3:9: error: stray '##' in program
    3 | ##################
      |         ^~
a.cc:3:11: error: stray '##' in program
    3 | ##################
      |           ^~
a.cc:3:13: error: stray '##' in program
    3 | ##################
      |             ^~
a.cc:3:15: error: stray '##' in program
    3 | ##################
      |               ^~
a.cc:3:17: error: stray '##' in program
    3 | ##################
      |                 ^~
a.cc:8:1: error: stray '##' in program
    8 | ####################
      | ^~
a.cc:8:3: error: stray '##' in program
    8 | ####################
      |   ^~
a.cc:8:5: error: stray '##' in program
    8 | ####################
      |     ^~
a.cc:8:7: error: stray '##' in program
    8 | ####################
      |       ^~
a.cc:8:9: error: stray '##' in program
    8 | ####################
      |         ^~
a.cc:8:11: error: stray '##' in program
    8 | ####################
      |           ^~
a.cc:8:13: error: stray '##' in program
    8 | ####################
      |             ^~
a.cc:8:15: error: stray '##' in program
    8 | ####################
      |               ^~
a.cc:8:17: error: stray '##' in program
    8 | ####################
      |                 ^~
a.cc:8:19: error: stray '##' in program
    8 | ####################
      |                   ^~
a.cc:9:1: error: stray '##' in program
    9 | ###   operator   ###
      | ^~
a.cc:9:3: error: stray '#' in program
    9 | ###   operator   ###
      |   ^
a.cc:9:18: error: stray '##' in program
    9 | ###   operator   ###
      |                  ^~
a.cc:9:20: error: stray '#' in program
    9 | ###   operator   ###
      |                    ^
a.cc:10:1: error: stray '##' in program
   10 | ####################
      | ^~
a.cc:10:3: error: stray '##' in program
   10 | ####################
      |   ^~
a.cc:10:5: error: stray '##' in program
   10 | ####################
      |     ^~
a.cc:10:7: error: stray '##' in program
   10 | ####################
      |       ^~
a.cc:10:9: error: stray '##' in program
   10 | ####################
      |         ^~
a.cc:10:11: error: stray '##' in program
   10 | ####################
      |           ^~
a.cc:10:13: error: stray '##' in program
   10 | ####################
      |             ^~
a.cc:10:15: error: stray '##' in program
   10 | ####################
      |               ^~
a.cc:10:17: error: stray '##' in program
   10 | ####################
      |                 ^~
a.cc:10:19: error: stray '##' in program
   10 | ####################
      |                   ^~
a.cc:15:1: error: stray '##' in program
   15 | ####################
      | ^~
a.cc:15:3: error: stray '##' in program
   15 | ####################
      |   ^~
a.cc:15:5: error: stray '##' in program
   15 | ####################
      |     ^~
a.cc:15:7: error: stray '##' in program
   15 | ####################
      |       ^~
a.cc:15:9: error: stray '##' in program
   15 | ####################
      |         ^~
a.cc:15:11: error: stray '##' in program
   15 | ####################
      |           ^~
a.cc:15:13: error: stray '##' in program
   15 | ####################
      |             ^~
a.cc:15:15: error: stray '##' in program
   15 | ####################
      |               ^~
a.cc:15:17: error: stray '##' in program
   15 | ####################
      |                 ^~
a.cc:15:19: error: stray '##' in program
   15 | ####################
      |                   ^~
a.cc:16:1: error: stray '##' in program
   16 | ###   iterator   ###
      | ^~
a.cc:16:3: error: stray '#' in program
   16 | ###   iterator   ###
      |   ^
a.cc:16:18: error: stray '##' in program
   16 | ###   iterator   ###
      |                  ^~
a.cc:16:20: error: stray '#' in program
   16 | ###   iterator   ###
      |                    ^
a.cc:17:1: error: stray '##' in program
   17 | ####################
      | ^~
a.cc:17:3: error: stray '##' in program
   17 | ####################
      |   ^~
a.cc:17:5: error: stray '##' in program
   17 | ####################
      |     ^~
a.cc:17:7: error: stray '##' in program
   17 | ####################
      |       ^~
a.cc:17:9: error: stray '##' in program
   17 | ####################
      |         ^~
a.cc:17:11: error: stray '##' in program
   17 | ####################
      |           ^~
a.cc:17:13: error: stray '##' in program
   17 | ####################
      |             ^~
a.cc:17:15: error: stray '##' in program
   17 | ####################
      |               ^~
a.cc:17:17: error: stray '##' in program
   17 | ####################
      |                 ^~
a.cc:17:19: error: stray '##' in program
   17 | ####################
      |                   ^~
a.cc:37:1: error: stray '##' in program
   37 | ################
      | ^~
a.cc:37:3: error: stray '##' in program
   37 | ################
      |   ^~
a.cc:37:5: error: stray '##' in program
   37 | ################
      |     ^~
a.cc:37:7: error: stray '##' in program
   37 | ################
      |       ^~
a.cc:37:9: error: stray '##' in program
   37 | ################
      |         ^~
a.cc:37:11: error: stray '##' in program
   37 | ################
      |           ^~
a.cc:37:13: error: stray '##' in program
   37 | ################
      |             ^~
a.cc:37:15: error: stray '##' in program
   37 | ################
      |               ^~
a.cc:38:1: error: stray '##' in program
   38 | ###   vect   ###
      | ^~
a.cc:38:3: error: stray '#' in program
   38 | ###   vect   ###
      |   ^
a.cc:38:14: error: stray '##' in program
   38 | ###   vect   ###
      |              ^~
a.cc:38:16: error: stray '#' in program
   38 | ###   vect   ###
      |                ^
a.cc:39:1: error: stray '##' in program
   39 | ################
      | ^~
a.cc:39:3: error: stray '##' in program
   39 | ################
      |   ^~
a.cc:39:5: error: stray '##' in program
   39 | ################
      |     ^~
a.cc:39:7: error: stray '##' in program
   39 | ################
      |       ^~
a.cc:39:9: error: stray '##' in program
   39 | ################
      |         ^~
a.cc:39:11: error: stray '##' in program
   39 | ################
      |           ^~
a.cc:39:13: error: stray '##' in program
   39 | ################
      |             ^~
a.cc:39:15: error: stray '##' in program
   39 | ################
      |               ^~
a.cc:51:1: error: stray '##' in program
   51 | ################
      | ^~
a.cc:51:3: error: stray '##' in program
   51 | ################
      |   ^~
a.cc:51:5: error: stray '##' in program
   51 | ################
      |     ^~
a.cc:51:7: error: stray '##' in program
   51 | ################
      |       ^~
a.cc:51:9: error: stray '##' in program
   51 | ################
      |         ^~
a.cc:51:11: error: stray '##' in program
   51 | ################
      |           ^~
a.cc:51:13: error: stray '##' in program
   51 | ################
      |             ^~
a.cc:51:15: error: stray '##' in program
   51 | ################
      |               ^~
a.cc:52:1: error: stray '##' in program
   52 | ###   tens   ###
      | ^~
a.cc:52:3: error: stray '#' in program
   52 | ###   tens   ###
      |   ^
a.cc:52:14: error: stray '##' in program
   52 | ###   tens   ###
      |              ^~
a.cc:52:16: error: stray '#' in program
   52 | ###   tens   ###
      |                ^
a.cc:53:1: error: stray '##' in program
   53 | ################
      | ^~
a.cc:53:3: error: stray '##' in program
   53 | ################
      |   ^~
a.cc:53:5: error: stray '##' in program
   53 | ################
      |     ^~
a.cc:53:7: error: stray '##' in program
   53 | ################
      |       ^~
a.cc:53:9: error: stray '##' in program
   53 | ################
      |         ^~
a.cc:53:11: error: stray '##' in program
   53 | ################
      |           ^~
a.cc:53:13: error: stray '##' in program
   53 | ################
      |             ^~
a.cc:53:15: error: stray '##' in program
   53 | ################
      |               ^~
a.cc:62:20: error: stray '@' in program
   62 |     result.shape = @S
      |                    ^
a.cc:64:6: error: stray '`' in program
   64 | proc `[]`[T]( t :tens[T], s :varargs[int] ) :T =
      |      ^
a.cc:64:9: error: stray '`' in program
   64 | proc `[]`[T]( t :tens[T], s :varargs[int] ) :T =
      |         ^
a.cc:72:6: error: stray '`' in program
   72 | proc `[]=`[T]( t :var tens[T], s :varargs[int], e :T ) =
      |      ^
a.cc:72:10: error: stray '`' in program
   72 | proc `[]=`[T]( t :var tens[T], s :varargs[int], e :T ) =
      |          ^
a.cc:81:1: error: stray '##' in program
   81 | #################
      | ^~
a.cc:81:3: error: stray '##' in program
   81 | #################
      |   ^~
a.cc:81:5: error: stray '##' i