题库练习 楼房重建
← 上一题 下一题 →

A2558 | 楼房重建

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

小 A 的楼房外有一大片施工工地,工地上有 $N$ 栋待建的楼房。每天,这片工地上的房子拆了又建、建了又拆。他经常无聊地看着窗外发呆,数自己能够看到多少栋房子。

为了简化问题,我们考虑这些事件发生在一个二维平面上。小 A 在平面上 $(0,0)$ 点的位置,第 $i$ 栋楼房可以用一条连接 $(i,0)$ 和 $(i,H_i)$ 的线段表示,其中 $H_i$ 为第 $i$ 栋楼房的高度。如果这栋楼房上任何一个高度大于 $0$ 的点与 $(0,0)$ 的连线没有与之前的线段相交,那么这栋楼房就被认为是可见的。

施工队的建造总共进行了 $M$ 天。初始时,所有楼房都还没有开始建造,它们的高度均为 $0$。在第 $i$ 天,建筑队将会将横坐标为 $X_i$ 的房屋的高度变为 $Y_i$(高度可以比原来大—修建,也可以比原来小—拆除,甚至可以保持不变—建筑队这天什么事也没做)。请你帮小 A 数数每天在建筑队完工之后,他能看到多少栋楼房?

输入格式

第一行两个正整数 $N,M$。

接下来 $M$ 行,每行两个正整数 $X_i,Y_i$。

输出格式

$M$ 行,第 $i$ 行一个整数表示第 $i$ 天过后小 A 能看到的楼房有多少栋。

输入输出样例

输入 #1
3 4
2 4
3 6
1 1000000000
1 1
输出 #1
1
1
1
2
C++ 编辑器
输入
输出