楼房

题目描述

地平线(x轴)上有n个矩(lou)形(fang),用三个整数h[i],l[i],r[i]来表示第i个矩形:矩形左下角为(l[i],0),右上角为(r[i],h[i])。地平线高度为0。在轮廓线长度最小的前提下,从左到右输出轮廓线。
下图为样例2。

输入格式

第一行一个整数n,表示矩形个数。
以下n行,每行3个整数h[i],l[i],r[i]表示第i个矩形。

输出格式

第一行一个整数m,表示节点个数。
以下m行,每行一个坐标表示轮廓线上的节点。从左到右遍历轮廓线并顺序输出节点。第一个和最后一个节点的y坐标必然为0。

输入样例1

2
3 0 2
4 1 3

输出样例1

6
0 0
0 3
1 3
1 4
3 4
3 0

输入样例2

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

输出样例2

14
-3 0
-3 3
0 3
0 2
1 2
1 0
2 0
2 4
4 4
4 2
6 2
6 3
8 3
8 0

数据范围

对于30%的数据,n<=100
对于另外30%的数据,n<=100000,1<=h[i],l[i],r[i]<=1000
对于100%的数据,1<=n<=100000,1<=h[i]<=10^9,-10^9<=l[i]<r[i]<=10^9

Source

fcs2016