CF1000C Covered Points Count

题目描述

你有 $n$ 个坐标轴上的区间,每个线段的端点坐标均为整数。部分线段可能会退化为点,线段之间可以相交、嵌套甚至重合。 你的任务是:对于每个 $k \in [1..n]$,计算满足被恰好 $k$ 个线段覆盖的整数坐标点的数量。端点分别为 $l_i$ 和 $r_i$ 的线段覆盖点 $x$,当且仅当 $l_i \le x \le r_i$。

输入格式

第一行一个整数 $n$($n \le 2 \times 10^5$),表示线段的数量。 以下 $n$ 行,每行有两个整数 $l_i$ 和 $r_i$($0 \le l \le r \le 10^{18}$),即这个线段的左右端点。

输出格式

输出 $n$ 个用空格分隔的整数 $cnt_1, cnt_2, \dots, cnt_n$,其中 $cnt_i$ 等于被恰好 $i$ 个线段覆盖的点的数量。

说明/提示

第一个示例的描述图: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1000C/17915e9f013a4bf2fc8da8bb91bf91d54c6ad4d9.png) 坐标为 $[0, 4, 5, 6, 7, 8]$ 的点被一个线段覆盖,点 $[1, 2]$ 被两个线段覆盖,点 $[3]$ 被三个线段覆盖。 第二个示例的描述图: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1000C/484913eb84f8712b6389579cb510f240f411cf37.png) 点 $[1, 4, 5, 6, 7]$ 被一个线段覆盖,点 $[2, 3]$ 被两个线段覆盖,没有被三个线段覆盖的点。 感谢 [守望](http://luogu.com.cn/user/49206) 提供翻译。