{"trustable":false,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"MD","content":"给定一个从 $1$ 开始编号的长度为 $n$ 的数组 $a$。你要支持三种操作:\n+ $1\\ \\ l\\ \\ r$ 输出 $\\sum \\limits _{i\u003dl}^r a_i$\n+ $2\\ \\ l\\ \\ r$ 对所有的 $i\\ (l\\leq i \\leq r)\\ a_i:\u003da_i-(a_i\\\u0026(-a_i))$\n+ $3\\ \\ l\\ \\ r$ 对所有的 $i\\ (l\\leq i \\leq r)$ 且 $a_i \\neq 0\\ \\ $ $a_i:\u003da_i+2^k$ 其中 $k$ 满足 $2^k \\leq a_i \\leq 2 ^{k+1}$\n\n因为答案会很大,请输出答案对 $998244353$ 取模的结果。"}},{"title":"Input","value":{"format":"MD","content":"第一行一个$T(T \\leq 5)$ ,代表测试样例的组数。\u003cbr\u003e\u003cbr\u003e对于每组测试样例:\u003cbr\u003e\u003cbr\u003e第一行一个整数 $n(1 \\leq n \\leq 100000)$, 代表数组长度 。\u003cbr\u003e\u003cbr\u003e第二行 $n$ 个整数 $a_1,a_2,\\dots,a_n (1 \\leq a_i \\leq 10^9)$, 代表数组元素。\u003cbr\u003e\u003cbr\u003e第三行一个整数 $q(1 \\leq q \\leq 100000)$, 代表操作数量。\u003cbr\u003e\u003cbr\u003e接下来 $q$ 行 分为三种类型:\n+ $1\\ \\ l\\ \\ r$\n+ $2\\ \\ l\\ \\ r$\n+ $3\\ \\ l\\ \\ r$\n\n代表题意所述内容。\n\u003cbr\u003e保证对于所有的测试样例 $\\sum n \\leq 4 \\times 10^5,\\sum q \\leq 4 \\times 10^5$."}},{"title":"Output","value":{"format":"MD","content":"对于每个操作 $1$ ,输出答案对 $998244353$ 取模的结果。"}},{"title":"Sample","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\u003e\u003cpre\u003e1\n\n5\n\n5 2 2 9 7\n\n4\n\n2 1 5\n\n1 1 1\n\n3 1 3\n\n1 2 5\u003c/pre\u003e\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e\u003cpre\u003e4\n\n14\u003c/pre\u003e\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n"}}]}