{"trustable":true,"sections":[{"title":"Description","value":{"format":"MD","content":"如题,已知一个数列,你需要进行下面三种操作:\n\n- 将某区间每一个数乘上 $x$;\n- 将某区间每一个数加上 $x$;\n- 求出某区间每一个数的和。\n"}},{"title":"Input","value":{"format":"MD","content":"第一行包含三个整数 $n,q,m$,分别表示该数列数字的个数、操作的总个数和模数。\n\n第二行包含 $n$ 个用空格分隔的整数,其中第 $i$ 个数字表示数列第 $i$ 项的初始值。\n\n接下来 $q$ 行每行包含若干个整数,表示一个操作,具体如下:\n\n操作 $1$: 格式:`1 x y k` 含义:将区间 $[x,y]$ 内每个数乘上 $k$\n\n操作 $2$: 格式:`2 x y k` 含义:将区间 $[x,y]$ 内每个数加上 $k$\n\n操作 $3$: 格式:`3 x y` 含义:输出区间 $[x,y]$ 内每个数的和对 $m$ 取模所得的结果\n"}},{"title":"Output","value":{"format":"MD","content":"输出包含若干行整数,即为所有操作 $3$ 的结果。\n"}},{"title":"Sample 1","value":{"format":"MD","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e5 5 38\n1 5 4 2 3\n2 1 4 1\n3 2 5\n1 2 4 2\n2 3 5 5\n3 1 4\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e17\n2\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n"}},{"title":"Hint","value":{"format":"MD","content":"【数据范围】\n\n对于 $30\\%$ 的数据:$n \\le 8$,$q \\le 10$。 \n对于 $70\\%$ 的数据:$n \\le 10^3 $,$q \\le 10^4$。 \n对于 $100\\%$ 的数据:$1 \\le n \\le 10^5$,$1 \\le q \\le 10^5$。\n\n除样例外,$m \u003d 571373$。\n\n(数据已经过加强 ^\\_^)\n\n样例说明:\n\n ![](CDN_BASE_URL/130f1707907f8c289dc77816c21c4fb4?v\u003d1715591520) \n\n故输出应为 $17$、$2$($40 \\bmod 38 \u003d 2$)。"}}]}