#AT1286. 模块化

模块化

题目描述

我们有一个长度为kk的数列:d0,d1,...,dk1d_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 满足 0j<n10\leq j< n-1(ajmodmi)<(aj+1modmi)(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