CSPSMK08D. 卡牌(card)

提交3 通过2
通过率66.7%
文件IO启用
输入文件card.in
输出文件card.out
时间限制1000ms
内存限制512MiB
    ID: 14554 传统题 文件IO 输入文件:card.in 输出文件:card.out 1000ms 512MiB 尝试: 3 已通过: 2 难度: 普及+/提高- 上传者: 标签>C++CSP-S考前模拟

题目描述

题目描述

梦梦正在玩卡牌游戏,每张卡牌都有正反两面,其中第 ii 张卡牌的编号为 ii,正面的属性为 aia_i,背面的属性为 bib_i,初始时所有卡牌正面朝上。

梦梦希望让自己的卡牌整体实力较大,因此想要最大化所有卡牌朝上的属性的中位数。

为了最大化卡牌的整体实力,梦梦可以进行至多一次操作,选择一个区间 l,rl,r,满足 1≤l≤r≤n1 \leq l \leq r \leq n,并将所有编号为 [l,r][l,r]​ 内的所有卡牌翻转一次(将背面朝上,正面朝下)。

请帮助梦梦最大化所有卡牌朝上的属性的中位数。

当 nn 为奇数时,nn 个数中的中位数为所有数从小到大排序后,排名第 n+12\frac{n+1}{2} 大的值。

输入格式

第一行给定一个正整数 nn,保证 nn 为奇数。

之后 nn 行,每行给定两个整数 ai,bia_i,b_i。

输出格式

输出一个整数,表示答案。

输入样例 #1

5
3 6
5 2
4 7
6 4
2 8

输出样例 #1

6

输入样例 #2

5
1 5
2 4
3 3
4 2
5 1

输出样例 #2

4

说明提示

【样例 1 解释】

可以翻转区间 [1,5][1,5],此时所有正面朝上的数为 6,2,7,4,86,2,7,4,8,中位数为 66。

输入样例 #3

1
850609050 487119647

输出样例 #3

850609050

数据范围

对于 40%40\% 的数据,1≤n≤5001 \leq n \leq 500​​

对于 80%80\% 的数据,1≤n≤50001 \leq n \leq 5000

对于 100%100\% 的数据,$1 \leq n \leq 3 \times 10^5,1 \leq a_i,b_i \leq 10^9$,保证 nn 为奇数。