atcoder#AGC015E. [AGC015E] Mr.Aoki Incubator

[AGC015E] Mr.Aoki Incubator

题目描述

数直線上に N N 人の高橋君が並んでおり、1 1 から N N までの番号がついています。 i i 人目の高橋君は、時刻 0 0 に位置 Xi X_i にいて、速度 Vi V_i で正の方向に歩き始めます。

けすぬ君は、時刻 0 0 に高橋君たちのうちの何人かを選んで青木君にすることができます。 高橋君が青木君になっても歩く速度は変化しません。 それ以降、もしある瞬間に高橋君と青木君が同じ座標にいたなら、高橋君は青木君になります。

けすぬ君が時刻 0 0 に高橋君を青木君にする 2N 2^N 通りの方法のうち、 十分な時間が経過した後、高橋君が全員青木君になっているような方法の数を 109+7 10^9+7 で割ったあまりを求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N X1 X_1 V1 V_1 : XN X_N VN V_N

输出格式

十分な時間が経過した後、高橋君が全員青木君になっているような方法の数を 109+7 10^9+7 で割ったあまりを出力せよ。

题目大意

题目大意

数轴上有NN个点,每个点初始时在位置XiX_i,以ViV_i的速度向数轴正方向前进

初始时刻,你可以选择一些点为其染色,之后的行走过程中,染色的点会将其碰到的所有点都染上色,之后被染上色的点亦是如此

在所有2N2^N种初始染色方案中,问有多少种初始染色方案,能使得最终所有的点都被染色?答案对109+710^9+7取模

3
2 5
6 1
3 7
6
4
3 7
2 9
8 16
10 8
9

提示

制約

  • 1  N  200000 1\ ≦\ N\ ≦\ 200000
  • 1  Xi,Vi  109(1  i  N) 1\ ≦\ X_i,V_i\ ≦\ 10^9(1\ ≦\ i\ ≦\ N)
  • Xi,Vi X_i,V_i は整数である
  • Xi X_i たちはすべて異なる
  • Vi V_i たちはすべて異なる

Sample Explanation 1

けすぬ君が (2),(3),(1,2),(1,3),(2,3),(1,2,3) (2),(3),(1,2),(1,3),(2,3),(1,2,3) 番目の高橋君を青木君にしたとき、十分な時間が経過した後にすべての高橋君が青木君になっています。