#P6528. 「Wdoi-1」完美冻结
「Wdoi-1」完美冻结
题目背景
琪露诺是一个喜欢研究数表的女孩子。
题目描述
琪露诺有 个正整数 ,她会按照如下方式构造一个大小为 的数字表格:
-
定义数表的左下角为 ,右上角为 ,从左向右数第 列,从下向上数第 行的位置为 。在数表的每个位置填入数字 ,然后在每个 处填入
-
枚举数表中的每一个 大小的子矩阵,当子矩阵左下角和右上角的数字都不为 时,记该子矩阵中从左到右,从上到下的数字分别为 ,进行以下操作:
- 若 ,,则在数表中 所处的位置填入
- 若 ,,则在数表中 所处的位置填入
- 若 ,,则在数表中 所处的位置填入
-
重复第二步操作直至数表中的每一个位置都填有正整数 。
-
最后,将数表中的每个数 变为 ,其中 是一给定常数, 表示不超过 的最大整数。
构造完 的巨大数表后,琪露诺会进行 次查询,每次询问数表中以 为左下角, 为右上角的子矩阵中所有数字的和。
头脑简单的琪露诺想了一天又一天,却始终没有头绪,因此她找到了聪明的你帮她解决这个问题。
当然,由于答案可能很大,你只需要输出答案对 取模后的结果即可。
输入格式
第一行三个整数 。
第二行 个正整数,表示 。
之后 行,每行四个正整数 ,表示询问子矩阵的左下角和右上角坐标。
输出格式
共 行,每行一个整数,表示每一个询问的答案对 取模后的结果。
3 2 2
1 2 3
1 2 2 3
1 1 3 3
7
14
6 3 3
1 1 4 5 1 4
1 1 6 6
1 2 3 4
2 2 5 5
87
14
32
提示
样例 1 解释
第一步操作后的数表:
$ \begin{bmatrix} 0 & 0 & 3 \cr %\cr是换行功能 0 & 2 & 0 \cr 1 & 0 & 0 \end{bmatrix} $
进行一次第二步操作后的数表:
$ \begin{bmatrix} 0 & 5 & 3 \cr %\cr是换行功能 3 & 2 & 5 \cr 1 & 3 & 0 \end{bmatrix} $
进行两次第二步操作后的数表:
$ \begin{bmatrix} 6 & 5 & 3 \cr %\cr是换行功能 3 & 2 & 5 \cr 1 & 3 & 6 \end{bmatrix} $
进行第三步操作(对 向下取整)后的数表:
$ \begin{bmatrix} 3 & 2 & 1 \cr %\cr是换行功能 1 & 1 & 2 \cr 0 & 1 & 3 \end{bmatrix} $
询问 1 2 2 3
的答案为
询问 1 1 3 3
的答案为
数据范围:
对于 的数据, , ,,。
子任务编号 | 特殊限制 | 分值 | |
---|---|---|---|
无特殊限制 | |||
且询问子矩阵为整个数表 | |||
无特殊限制 |
注意:本题采取捆绑测试