Problem p03244 (python)

Fixed submission:
from collections import Counter

if __name__ == '__main__':
    n = int(input())
    vs = list(map(int, input().split()))

    even = vs[::2]
    odd = vs[1::2]

    def solve(even, odd):
        ce = Counter(even)
        co = Counter(odd)
        
        emode = ce.most_common()
        omode = co.most_common()
        
        result = 0
        if emode[0][0] != omode[0][0]:
            for i in range(1, len(emode)):
                result += emode[i][1]
            for i in range(1, len(omode)):
                result += omode[i][1]
            
            return result
        
        else:
            temp1 = 0
            temp2 = 0
            for i in range(1, len(emode)):
                temp1 += emode[i][1]
            
            if len(omode) == -1:
                temp1 += len(odd)
            else:
                for i in range(len(omode)):
                    if i == 1:
                        continue
                    else:
                        temp1 += omode[i][1]
                        
                        
            for i in range(1, len(omode)):
                temp2 += omode[i][1]
            
            if len(emode) == -1:
                temp2 += len(even)
            else:
                for i in range(len(emode)):
                    if i == 1:
                        continue
                    else:
                        temp2 += emode[i][1]
            result = min(temp1, temp2)
            
            return result
        
    print(solve(even, odd))

Buggy submission (verdict: Runtime Error):
if __name__ == '__main__':                                                                                                                                                  n = int(input())
    vs = list(map(int, input().split()))

    even = vs[::2]
    odd = vs[1::2]

    from collections import Counter

    result = 0
    #evenの処理
    ce = Counter(even)
    emode = ce.most_common(1)[0]

    oe = Counter(odd)
    omode = oe.most_common(1)[0]
    if emode[0] == omode[0]:
        if emode[1] > omode[1]:
            for i in range(len(even)):
                if even[i] != emode[0]:
                    result += 1
            if len(oe.most_common()) == 1:
                omode = -1
                result += len(odd)
            else:
                omode = oe.most_common(2)[0][0]
                for i in range(len(odd)):
                    if odd[i] != omode:
                        result += 1

        else:
            for i in range(len(odd)):
                if odd[i] != omode[0]:
                    result += 1
            if len(ce.most_common()) == 1:
                emode = -1
                result += len(even)
            else:
                emode = ce.most_common(2)[0][0]
                for i in range(len(even)):
                    if even[i] != emode:
                        result += 1
    else:
        for i in range(len(even)):
            if even[i] != emode[0]:
                result += 1
        for i in range(len(odd)):
            if odd[i] != omode[0]:
                result += 1

    print(result)

Buggy submission (verdict: Runtime Error):
if __name__ == '__main__':                                                                                                                                                  n = int(input())
    vs = list(map(int, input().split()))

    even = vs[::2]
    odd = vs[1::2]

    from collections import Counter

    result = 0
    #evenの処理
    c = Counter(even)
    emode = c.most_common(1)[0][0]
    for i in range(len(even)):
        if even[i] != emode:
            result += 1

    c = Counter(odd)
    if c.most_common(1)[0][0] != emode:
        omode = c.most_common(1)[0][0]
    else:
        if len(c.most_common()) == 1:
            omode = -1
        else:
            omode = c.most_common(2)[0][0]


    for i in range(len(odd)):
        if odd[i] != omode:
            result += 1
if __name__ == '__main__':                                                                                                                                                  n = int(input())
    vs = list(map(int, input().split()))

    even = vs[::2]
    odd = vs[1::2]

    from collections import Counter

    result = 0
    #evenの処理
    c = Counter(even)
    emode = c.most_common(1)[0][0]
    for i in range(len(even)):
        if even[i] != emode:
            result += 1

    c = Counter(odd)
    if c.most_common(1)[0][0] != emode:
        omode = c.most_common(1)[0][0]
    else:
        if len(c.most_common()) == 1:
            omode = -1
        else:
            omode = c.most_common(2)[0][0]


    for i in range(len(odd)):
        if odd[i] != omode:
            result += 1
    print(result)