AT_arc159_e.[ARC159E] Difference Sum Query

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定一个正整数 NN 和 MM 组正整数对 (a0,b0),…,(aM−1,bM−1)(a_0, b_0), \ldots, (a_{M-1}, b_{M-1})(请注意 ai,bia_i, b_i 的下标从 00 开始)。

此外,存在如下定义的非负整数序列 X=(x1,…,xN)X=(x_1, \ldots, x_N)。

  • xix_i 的确定方式如下:
    1. 令 l=1,r=N,t=0l=1, r=N, t=0。
    2. 令 m=⌊at mod M×l+bt mod M×rat mod M+bt mod M⌋m=\left\lfloor \dfrac{a_{t \bmod M} \times l + b_{t \bmod M} \times r}{a_{t \bmod M} + b_{t \bmod M}} \right\rfloor(⌊x⌋\lfloor x \rfloor 表示不超过 xx 的最大整数)。若 m=im=i,则令 xi=tx_i=t 并结束步骤。
    3. 若 l≤i<ml \leq i < m,则令 r=m−1r=m-1,否则令 l=m+1l=m+1。tt 的值加 11,回到步骤 2。

对于 i=1,2,…,Qi=1,2,\ldots,Q,请计算 ∑j=cidi−1∣xj−xj+1∣\sum_{j=c_i}^{d_i-1} |x_j - x_{j+1}| 的值。
在本题的约束下,可以证明答案不会超过 101810^{18}。

输入格式

输入以如下格式从标准输入给出。

NN MM
a0a_0 b0b_0
⋮\vdots
aM−1a_{M-1} bM−1b_{M-1}
QQ
c1c_1 d1d_1
⋮\vdots
cQc_Q dQd_Q

输出格式

输出 QQ 行。第 xx 行输出对应 i=xi=x 的问题答案。

输入输出样例

  • 输入#1

    5 1
    1 1
    3
    1 2
    2 4
    3 5

    输出#1

    1
    3
    2
  • 输入#2

    1000000000000000 2
    15 9
    9 15
    3
    100 10000
    5000 385723875
    150 17095708

    输出#2

    19792
    771437738
    34191100

说明/提示

限制条件

  • 2≤N≤10152 \leq N \leq 10^{15}
  • 1≤M≤1001 \leq M \leq 100
  • 1≤ai,bi≤10001 \leq a_i, b_i \leq 1000
  • max⁡(aibi,biai)≤2\max \left( \dfrac{a_i}{b_i}, \dfrac{b_i}{a_i} \right) \leq 2
  • 1≤Q≤1041 \leq Q \leq 10^4
  • 1≤ci<di≤N1 \leq c_i < d_i \leq N
  • 所有输入均为整数

样例解释 1

X=(1,2,0,1,2)X=(1,2,0,1,2)。例如,x1x_1 的确定过程如下:

  • 令 l=1,r=5(=N),t=0l=1, r=5(=N), t=0。
  • 令 m=3(=⌊1×1+1×51+1⌋)m=3\left(=\left\lfloor \dfrac{1 \times 1 + 1 \times 5}{1+1} \right\rfloor\right)。
  • 因为 l≤1<ml \leq 1 < m,所以 r=2(=m−1)r=2(=m-1),tt 增加到 11。
  • 令 m=1(=⌊1×1+1×21+1⌋)m=1\left(= \left\lfloor \dfrac{1 \times 1 + 1 \times 2}{1+1} \right\rfloor \right)。m=1m=1,所以 x1=1(=t)x_1=1(=t),过程结束。

对于 (ci,di)(c_i, d_i),例如 (c1,d1)(c_1, d_1),答案为 ∑j=cidi−1∣xj−xj+1∣=∣x1−x2∣=1\sum_{j=c_i}^{d_i-1} |x_j - x_{j+1}| = |x_1-x_2| = 1。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页