UOJ Logo Universal Online Judge

UOJ

#379. 【新男人八题】Intervals

附件下载 统计

令区间 [s,t] 表示在 st 之间(包含 st)的整数集合。给定一个包含 n 个区间的集合 A={[si,ti]},求一个区间集合 B(不必是 A 的子集),使得每个 [si,ti]A 都能表示为 B 中若干个区间的并集。目标是最小化 B 中的区间个数。

输入格式

输入包含最多 100 组测试数据。每组数据第一行包含一个整数 n,接下来 n 行,每行包含两个整数 siti,中间由一个空格分隔。

输出格式

对于每组测试数据,第一行输出一个整数 m,表示区间个数。接下来 m 行,第 j 行输出两个整数 sjtj 表示一个区间,区间可以按照任意顺序输出。如果存在多种区间数相同的方案,输出任意一种均可。

样例一

input

2
1 2
3 4
3
1 2
3 4
1 4
7
5 9
0 6
4 8
3 7
0 5
7 9
4 6

output

2
1 2
3 4
2
1 2
3 4
5
0 5
4 6
3 7
5 8
7 9

限制与约定

1n10000si109

时间限制:1s

空间限制:256MB