2983 - 【入门】线段覆盖

给你 n 条在数轴上的线段,每条线段的端点都是整数。线段可以相互交叉,重叠或甚至重合。每个线段的参数是左端点和右端点的坐标。

考虑坐标 1m 以及它们之间的坐标为整数的点。您的任务是打印所有没有被线段覆盖的点。一条线段会覆盖它的端点。

输入

输入的第一行包含两个整数 nm1 \le n,m\le 100)。

然后输入 n 行,每一行包含两个整数 lr,为线段的左右端点(1\le l\le r\le m)(线段可以退化为一个点)。

输出

在第一行打印一个整数 k,即没有被覆盖的点的个数。

在第二行打印 k 个任何顺序的整数,即没有被覆盖的点的坐标。

如果根本没有这样的点,则输出只有一个整数 0

样例

输入

3 5
2 2
1 2
5 5

输出

2
3 4

输入

1 7
1 7

输出

0

提示

开一个数组模拟就可以了。把所有被覆盖的点标记就可以了。

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题