little w and Segment Coverage
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小w有m条线段,编号为1m

用这些线段覆盖数轴上的n个点,编号为1n

i条线段覆盖数轴上的区间是L_iR_i

覆盖的区间可能会有重叠,而且不保证m条线段一定能覆盖所有n个点。

现在小w不小心丢失了一条线段,请问丢失哪条线段,使数轴上没被覆盖到的点的个数尽可能少,请输出丢失的线段的编号和没被覆盖到的点的个数。如果有多条线段符合要求,请输出编号最大线段的编号(编号为1m)。

输入描述:

第一行包括两个正整数n,m(1\leq n,m\leq 10^5)

接下来m行,每行包括两个正整数L_i,R_i(1\leq L_i\leq R_i\leq n)

输出描述:

输出一行,包括两个整数a b

a表示丢失的线段的编号。

b表示丢失了第a条线段后,没被覆盖到的点的个数。
示例1

输入

复制
5 3
1 3
4 5
3 4

输出

复制
3 0

说明

若丢失第1条线段,1和2没被线段覆盖到。
若丢失第2条线段,5没被线段覆盖到。
若丢失第3条线段,所有点都被线段覆盖到了。
示例2

输入

复制
6 2
1 2
4 5

输出

复制
2 4

说明

若丢失第1条线段,1,2,3,6没被线段覆盖到。
若丢失第2条线段,3,4,5,6没被线段覆盖到。