{"trustable":true,"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":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003e 现在你回来了,并且有一个任务要做:\u003cbr\u003e 给定一个仅由小写英文字母组成的字符串s,定义f(s)为s的不同子字符串的数量。\u003cbr\u003e 你有一些查询,每次你需要计算f(s[l...r]),这里s[l...r]表示从l到r的s的子字符串。\u003c/div\u003e"}},{"title":"输入","value":{"format":"HTML","content":"第一行包含整数T(1≤T≤5),表示测试用例的数量。\u003cbr\u003e 对于每个测试用例,第一行包含一个字符串s(1 ≤ s的长度 ≤ 2000)。\u003cbr\u003e 用n表示s的长度。\u003cbr\u003e 第二行包含一个整数Q(1 ≤ Q ≤ 10000),表示查询的数量。\u003cbr\u003e 然后是Q行,每行包含两个整数l, r(1 ≤ l ≤ r ≤ n),表示一个查询。"}},{"title":"输出","value":{"format":"HTML","content":"对于每个测试用例,对于每个查询,在一行中输出答案。"}},{"title":"示例","value":{"format":"HTML","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\u003e2\r\nbbaba\r\n5\r\n3 4\r\n2 2\r\n2 5\r\n2 4\r\n1 4\r\nbaaba\r\n5\r\n3 3\r\n3 4\r\n1 4\r\n3 5\r\n5 5\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e3\r\n1\r\n7\r\n5\r\n8\r\n1\r\n3\r\n8\r\n5\r\n1\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}},{"title":"提示","value":{"format":"HTML","content":"\u003cbr\u003e 我不会反对哈希,因为我很友好。当然,这个问题有一个不依赖于哈希的解决方案。\u003cbr\u003e"}}]}