#P14519. [2026年省队模拟联测]神
[2026年省队模拟联测]神
题目描述
众所周知,CN-001 是神一般的存在。 CN-001给了你一个 阶排列 ,并向你提出了 次询问。每次询问 CN-001 会给出四个参数 $l_{1}, r_{1}, l_{2}, r_{2}\left(1 \leq l_{1} \leq r_{1}<l_{2} \leq r_{2} \leq n\right)$ ,且 。记 ,你需要构造一个 阶排列 并满足:$\forall j \in[1, m], a_{j+l_{1}-1}<a_{b_{j}+l_{2}-1 \text { 。 }}$ 并不满足于让你构造出一个 想让你算一下满足条件的的 的数量。 由于 CN-001 崇尚秩序, Ta 对"逆序对"这类事物不感兴趣,因此排列 中的逆序对数不会太多,具体来说,就是满足 且 的二元组 的数量不会超过 。
由于答案可能很大,CN-001 不想太为难你,于是 Ta 只要你输出答案对 取模的结果。
输入格式
单个测试点中包含多组测试数据。输人的第一行包含一个整数 ,表示测试数据的组数。
对于每组数据,第一行包含两个整数 和 。 第二行包含 个整数,表示排列 。 接下来 行,每行包含 4 个整数 ,表示一次询问。
输出格式
共 行,每行一个数,表示一次询问的答案对 取模后的结果。
输入样例1
3
4 1
1 2 3 4
1 2 3 4
4 2
1 3 2 4
1 1 2 2
1 2 3 4
10 1
1 4 3 2 9 5 6 7 10 8
1 5 6 10
输出样例1
2
1
1
24
样例 2
见选手目录下的 god2.in 和 god2.ans。
数据范围
记 分别表示单个测试点中各组测试数据的 之和。 对于 的数据, 。 对于 的数据, 。 对于 的数据, ,排列 的逆序对数不超过 。 数据很弱,欢迎水过。