#4931. [USACO13OPEN] Cow Crossings G

[USACO13OPEN] Cow Crossings G

题目描述

农夫约翰的N头奶牛(1 ≤ N ≤ 100,000)每天都要穿过农场中央的一条道路。将农场地图看作二维平面,道路水平延伸,道路一侧由直线y=0表示,另一侧由直线y=1表示。

奶牛i的穿行路线是从道路一侧的位置(a_i, 0)直线行进到另一侧的位置(b_i, 1)。所有a_i各不相同,所有b_i也各不相同,这些坐标都是介于-1,000,000到1,000,000之间的整数。

尽管约翰的奶牛相对灵活,但他经常担心路径相交的奶牛对可能会在穿行过程中因碰撞而受伤。约翰认为一头奶牛是"安全的",当且仅当没有其他奶牛的路径与她的路径相交。请帮助约翰计算安全奶牛的数量。

输入格式

第一行包含一个整数N,表示奶牛的数量。

接下来的N行,每行包含两个整数a_i和b_i,描述奶牛i的穿行路径。

输出格式

输出一个整数,表示安全奶牛的数量。

输入输出样例

输入 #1

4
-3 4
7 8
10 16
3 9

输出 #1

2

样例解释

输入中有4头奶牛:

  • 奶牛1:从(-3,0)到(4,1)
  • 奶牛2:从(7,0)到(8,1)
  • 奶牛3:从(10,0)到(16,1)
  • 奶牛4:从(3,0)到(9,1)

安全奶牛有:

  • 奶牛1(不与任何其他奶牛路径相交)
  • 奶牛3(不与任何其他奶牛路径相交)

奶牛2和奶牛4的路径相互相交,因此输出结果为2。