AT_abc344_g [ABC344G] Points and Comparison
Description
[problemUrl]: https://atcoder.jp/contests/abc344/tasks/abc344_g
**特殊な入力形式に注意してください。**
$ xy $ 平面上に $ N $ 個の点 $ (X_i,Y_i) $ があります。これらの点の情報は入力から与えられます。
また、 $ Q $ 個の整数組 $ (A_j,B_j) $ が与えられます。
$ f(A_j,B_j) $ を $ Y_i\ \ge\ A_j\ \times\ X_i\ +\ B_j $ を満たす $ i $ の個数として定義します。
$ \displaystyle\ \sum^{Q}_{j=1}\ f(A_j,B_j) $ を求めてください。
但し、この問題では $ Q $ が非常に大きくなるため、 $ (A_j,B_j) $ は直接与えられません。
代わりに $ G_0,R_a,R_b $ が与えられ、 $ (A_j,B_j) $ は以下の方法で生成されます。
- まず、 $ n\ \ge\ 0 $ に対して、 $ G_{n+1}\ =\ (48271\ \times\ G_n)\ \mod\ (2^{31}-1) $ と定義します。
- $ j=1,2,\dots,Q $ に対して、 $ (A_j,B_j) $ を次のように生成します。
- $ A_j\ =\ -R_a\ +\ (G_{3j\ -\ 2}\ \mod\ (2\ \times\ R_a\ +\ 1)\ ) $
- $ B_j\ =\ -R_b\ +\ ((G_{3j\ -\ 1}\ \times\ (2^{31}-1)\ +\ G_{3\ j})\ \mod\ (2\ \times\ R_b\ +\ 1)\ ) $
この生成法から、 $ A_j,\ B_j $ は以下の制約を満たすことが示せます。
- $ -R_a\ \le\ A_j\ \le\ R_a $
- $ -R_b\ \le\ B_j\ \le\ R_b $
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ X_1 $ $ Y_1 $ $ X_2 $ $ Y_2 $ $ \vdots $ $ X_N $ $ Y_N $ $ Q $ $ G_0 $ $ R_a $ $ R_b $
Output Format
答えを整数として出力せよ。
Explanation/Hint
### 制約
- 入力は全て整数
- $ 1\ \le\ N\ \le\ 5000 $
- $ 1\ \le\ Q\ \le\ 10^7 $
- $ |X_i|,\ |Y_i|\ \le\ 10^8 $
- $ (X_i,Y_i) $ は相異なる
- $ 0\ \le\ G_0\