#CZ2024A. 早期的鸟儿有虫吃

早期的鸟儿有虫吃

No testdata at current.

早期的鸟儿有虫吃

时空限制

  • CPU占用时长: 1秒
  • 内存使用限制: 128MB

题目描述

清晨,丛林里的鸟儿开始了一天的忙碌,吃早餐。

丛林可以看成是一个无限大的网格,每个格子在 00 时刻都有且仅有一只虫子。丛林里有 n(1n3)n(1 \le n \le 3) 只鸟,第 ii 只鸟在 00 时刻在第 x[i]x[i] 行,第 y[i]y[i] 列。其中,对于所有数据保证 x[i]=1x[i]=1y[i]=1y[i]=1,即第 ii 只鸟初始时一定在第 11 行或第 11 列。

为了简化问题,我们假设鸟都只会向下或向右直线飞行,而虫子是不动的。当鸟儿在任何时刻(包括时刻 00)飞过一个格子时,就会吃掉该格子内的虫子。相应的,该时刻之后,该格子就不再有虫子了。

同时保证:如果一只鸟往下飞,则它的起始位置一定在第一行;如果一只鸟往右飞,则它的起始位置一定在第一列。为了保证鸟的飞行方向唯一,鸟的初始位置不会是 (1,1)(1,1)

因为所有鸟都喜欢享受连续的免费早餐,所以如果在飞行时到达了一个已经没有虫子的格子,它就会非常不爽,直接停止在这个格子中。测试数据保证所有的鸟在任意时刻的位置互不相同。

需要注意的是,吃早餐的时间是有限的,只有 WW 个单位的时间。因此,如果一只鸟在时刻 WW 开始时还没有停止,那它会在这个时刻开始前被强制停止。

现在,想请聪明的你求出,对于每个 i(1in)i(1 \le i \le n),第 ii 只鸟吃了多少只虫子?

输入格式

第一行,两个正整数 n,Wn, W,分别表示鸟的数量和吃早餐的总时刻数。

接下来 nn 行,每行两个正整数 x[i],y[i]x[i], y[i],表示第 ii 只鸟 00 时刻在第 x[i]x[i] 行第 y[i]y[i] 列。

输出格式

nn 行,第 ii 行一个正整数,表示第 ii 只鸟吃的虫子数。

输入输出样例

样例 1

输入:

1 5
2 1

输出:

5

说明: 仅有的1只鸟在时刻0从第2行第1列向右依次飞过1~5列,在时刻0,1,2,3,4各吃了一只虫子,在时刻5开始前被强制停止了,所以共吃了5只虫子。

样例 2

输入:

2 20
2 1
1 5

输出:

4
20

说明: 第1只鸟在时刻0从第2行第1列向右依次飞过1~4列,在时刻4时飞到了第2行第5列,发现这一格的虫子在时刻1就被第2只鸟吃掉了,所以共吃了4只虫子就停下了。

第2只鸟在时刻0从第1行第5列向下沿着第5列依次飞过1~20行,共吃了20只虫子后于时刻20停止。

数据范围与提示

本题共有 1010 个测试点,每个测试点 66 分。

对于所有测试点:1n31 \le n \le 31x[i],y[i]1091 \le x[i], y[i] \le 10^9,对于每个 iix[i]=1x[i]=1y[i]=1y[i]=1

  • 对于测试点 1-3:n=1n=1
  • 对于测试点 1、4、5、8、9:所有鸟的前进方向相同

保证所有未停止的鸟在任意时刻位置互不相同,即任意时刻不会有两只鸟到达同一格子。