#3275. 小象与卡片

小象与卡片

题目描述

小象喜欢玩彩色卡片。

他有 nn 张卡片,每张恰好有两种颜色(正面一种、背面一种)。初始时所有卡片都正面朝上放在桌上。小象每一步可以把任意一张卡片翻到另一面。小象认为桌上的一叠卡片是有趣的,当且仅当至少一半的卡片朝上的一面颜色相同。

请帮小象求出让这 nn 张卡片变得有趣所需的最少翻转次数。

输入格式

第一行包含一个整数 nn(1≤n≤1051 \le n \le 10^5),表示卡片数。接下来 nn 行描述所有卡片,每行一张。每张卡片用一对不超过 10910^9 的正整数描述——即两个面的颜色。每行第一个数是正面颜色,第二个数是背面颜色。正面颜色可能与背面颜色相同。

行内数字之间用单个空格隔开。

输出格式

输出一行一个整数——所求的最少翻转次数。如果无法让这叠卡片变得有趣,输出 -1。

3
4 7
4 7
7 4
0
5
4 7
7 4
2 11
9 7
1 1
2

说明/提示

第一组样例中,三张卡片初始朝上的颜色为 4、4、7。三张中有两张颜色同为 4,因此无需任何操作,答案为 0。

第二组样例中,可以翻转第 1 张和第 4 张卡片。翻转后五张卡片中有三张颜色为 7。