#AT1286. 模块化

模块化

题目描述

我们有一个长度为kk的数列:d0,d1,...,dk−1d_0,d_1,...,d_{k-1}。

按顺序处理以下qq个查询:

第ii个查询包含三个整数ni,xi,min_i,x_i,m_i。

$$a_j= \begin{cases} x& j=0 \\ a_{j-1}+d_{(j-1)\mod k}&0<j\leq n-1 \end{cases}$$

对于每组询问,请回答有多少个 jj 满足 0≤j<n−10\leq j< n-1 且 (ajmod  mi)<(aj+1mod  mi)(a_j\mod m_i)<(a_{j+1}\mod m_i)。

输入

第一行两个整数k,qk,q

第二行一个长度为kk的序列

接下来一共qq行,表示一组询问ni,xi,min_i,x_i,m_i

输出

输出qq行

第ii行对应第ii次询问的回答

3 1
3 1 4
5 3 2
1

样例解释

对于第一个查询,序列aj{a_j}将变为3,6,7,11,14 3,6,7,11,14

  • (a0 mod 2) > (a1 mod 2) (a_0~\textrm{mod}~2)\ >\ (a_1~\textrm{mod}~2)
  • (a1 mod 2) < (a2 mod 2) (a_1~\textrm{mod}~2)\ <\ (a_2~\textrm{mod}~2)
  • (a2 mod 2) = (a3 mod 2) (a_2~\textrm{mod}~2)\ =\ (a_3~\textrm{mod}~2)
  • (a3 mod 2) > (a4 mod 2) (a_3~\textrm{mod}~2)\ >\ (a_4~\textrm{mod}~2)

因此,对于这个查询的回答应该是1。

7 3
27 18 28 18 28 46 1000000000
1000000000 1 7
1000000000 2 10
1000000000 3 12
224489796
214285714
559523809

提示

  • 1 ≤ k, q ≤ 5000 1\ \leq\ k,\ q\ \leq\ 5000
  • 0 ≤ di ≤ 109 0\ \leq\ d_i\ \leq\ 10^9
  • 2 ≤ ni ≤ 109 2\ \leq\ n_i\ \leq\ 10^9
  • 0 ≤ xi ≤ 109 0\ \leq\ x_i\ \leq\ 10^9
  • 2 ≤ mi ≤ 109 2\ \leq\ m_i\ \leq\ 10^9