{"trustable":false,"prependHtml":"\u003cstyle type\u003d\u0027text/css\u0027\u003e\n .input, .output {\n border: 1px solid #888888;\n }\n .output {\n margin-bottom: 1em;\n position: relative;\n top: -1px;\n }\n .output pre, .input pre {\n background-color: #EFEFEF;\n line-height: 1.25em;\n margin: 0;\n padding: 0.25em;\n }\n \u003c/style\u003e\n \u003clink rel\u003d\"stylesheet\" href\u003d\"//codeforces.org/s/96598/css/problem-statement.css\" type\u003d\"text/css\" /\u003e\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 type\u003d\"text/javascript\" async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS_HTML-full\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv\u003e\n \u003cp\u003eGiven a string \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003es\u003c/i\u003e\u003c/span\u003e, process \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003eq\u003c/i\u003e\u003c/span\u003e queries, each having one of the following forms:\u003c/p\u003e\n \u003cul\u003e \n \u003cli\u003e \u003cspan class\u003d\"tex-span\"\u003e1 \u003ci\u003ei\u003c/i\u003e \u003ci\u003ec\u003c/i\u003e\u003c/span\u003e — Change the \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003ei\u003c/i\u003e\u003c/span\u003e-th character in the string to \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003ec\u003c/i\u003e\u003c/span\u003e. \u003c/li\u003e\n \u003cli\u003e \u003cspan class\u003d\"tex-span\"\u003e2 \u003ci\u003el\u003c/i\u003e \u003ci\u003er\u003c/i\u003e \u003ci\u003ey\u003c/i\u003e\u003c/span\u003e — Consider the substring of \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003es\u003c/i\u003e\u003c/span\u003e starting at position \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003el\u003c/i\u003e\u003c/span\u003e and ending at position \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003er\u003c/i\u003e\u003c/span\u003e. Output the number of times \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003ey\u003c/i\u003e\u003c/span\u003e occurs as a substring in it. \u003c/li\u003e\n \u003c/ul\u003e\n\u003c/div\u003e\n给一个字符串,支持两种操作:\n1.单点修改某个字符。\n2.给一个字符串y,询问y在s[l..r]这个子串中出现了多少次。"}},{"title":"Input","value":{"format":"HTML","content":"\u003cdiv class\u003d\"input-specification\"\u003e\n \u003cdiv class\u003d\"section-title\"/div\u003e\n \u003cp\u003eThe first line of the input contains the string \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003es\u003c/i\u003e\u003c/span\u003e (\u003cspan class\u003d\"tex-span\"\u003e1 ≤ |\u003ci\u003es\u003c/i\u003e| ≤ 10\u003csup class\u003d\"upper-index\"\u003e5\u003c/sup\u003e\u003c/span\u003e) of lowercase English letters.\u003c/p\u003e\n \u003cp\u003eThe second line contains an integer \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003eq\u003c/i\u003e\u003c/span\u003e (\u003cspan class\u003d\"tex-span\"\u003e1 ≤ \u003ci\u003eq\u003c/i\u003e ≤ 10\u003csup class\u003d\"upper-index\"\u003e5\u003c/sup\u003e\u003c/span\u003e) \u0026nbsp;— the number of queries to process.\u003c/p\u003e\n \u003cp\u003eThe next \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003eq\u003c/i\u003e\u003c/span\u003e lines describe the queries and may have one of the following forms:\u003c/p\u003e\n \u003cul\u003e \n \u003cli\u003e \u003cspan class\u003d\"tex-span\"\u003e1 \u003ci\u003ei\u003c/i\u003e \u003ci\u003ec\u003c/i\u003e\u003c/span\u003e (\u003cspan class\u003d\"tex-span\"\u003e1 ≤ \u003ci\u003ei\u003c/i\u003e ≤ |\u003ci\u003es\u003c/i\u003e|\u003c/span\u003e) \u003c/li\u003e\n \u003cli\u003e \u003cspan class\u003d\"tex-span\"\u003e2 \u003ci\u003el\u003c/i\u003e \u003ci\u003er\u003c/i\u003e \u003ci\u003ey\u003c/i\u003e\u003c/span\u003e (\u003cspan class\u003d\"tex-span\"\u003e1 ≤ \u003ci\u003el\u003c/i\u003e ≤ \u003ci\u003er\u003c/i\u003e ≤ |\u003ci\u003es\u003c/i\u003e|\u003c/span\u003e) \u003c/li\u003e\n \u003c/ul\u003e\n \u003cp\u003e\u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003ec\u003c/i\u003e\u003c/span\u003e is a lowercase English letter and \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003ey\u003c/i\u003e\u003c/span\u003e is a non-empty string consisting of only lowercase English letters.\u003c/p\u003e\n \u003cp\u003eThe sum of \u003cspan class\u003d\"tex-span\"\u003e|\u003ci\u003ey\u003c/i\u003e|\u003c/span\u003e over all queries of second type is at most \u003cspan class\u003d\"tex-span\"\u003e10\u003csup class\u003d\"upper-index\"\u003e5\u003c/sup\u003e\u003c/span\u003e.\u003c/p\u003e\n \u003cp\u003eIt is guaranteed that there is at least one query of second type.\u003c/p\u003e\n \u003cp\u003eAll strings are \u003cspan class\u003d\"tex-span\"\u003e1\u003c/span\u003e-indexed.\u003c/p\u003e\n \u003cp\u003e\u003cspan class\u003d\"tex-span\"\u003e|\u003ci\u003es\u003c/i\u003e|\u003c/span\u003e is the length of the string \u003cspan class\u003d\"tex-span\"\u003e\u003ci\u003es\u003c/i\u003e\u003c/span\u003e.\u003c/p\u003e\n\u003c/div\u003e"}},{"title":"Output","value":{"format":"HTML","content":"\u003cdiv class\u003d\"output-specification\"\u003e\n \u003cdiv class\u003d\"section-title\"/div\u003e\n \u003cp\u003eFor each query of type \u003cspan class\u003d\"tex-span\"\u003e2\u003c/span\u003e, output the required answer in a separate line.\u003c/p\u003e\n\u003c/div\u003e"}},{"title":"Example","value":{"format":"HTML","content":"\u003cstyle type\u003d\u0027text/css\u0027\u003e .input, .output {border: 1px solid #888888;} .output {margin-bottom:1em;position:relative;top:-1px;} .output pre,.input pre {background-color:#EFEFEF;line-height:1.25em;margin:0;padding:0.25em;} .title {background-color:#FFFFFF;border-bottom: 1px solid #888888;font-family:arial;font-weight:bold;padding:0.25em;} \u003c/style\u003e\u003cdiv class\u003d\"sample-tests\"\u003e\n \u003cdiv class\u003d\"section-title\"/div\u003e\n \u003cdiv class\u003d\"sample-test\"\u003e\n \u003cdiv class\u003d\"input\"\u003e\n \u003cdiv class\u003d\"title\"\u003e\n Input\n \u003c/div\u003e\n \u003cpre\u003eababababa\u003cbr\u003e3\u003cbr\u003e2 1 7 aba\u003cbr\u003e1 5 c\u003cbr\u003e2 1 7 aba\u003cbr\u003e\u003c/pre\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"output\"\u003e\n \u003cdiv class\u003d\"title\"\u003e\n Output\n \u003c/div\u003e\n \u003cpre\u003e3\u003cbr\u003e1\u003cbr\u003e\u003c/pre\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"input\"\u003e\n \u003cdiv class\u003d\"title\"\u003e\n Input\n \u003c/div\u003e\n \u003cpre\u003eabcdcbc\u003cbr\u003e5\u003cbr\u003e2 1 7 bc\u003cbr\u003e1 4 b\u003cbr\u003e2 4 7 bc\u003cbr\u003e1 2 a\u003cbr\u003e2 1 4 aa\u003cbr\u003e\u003c/pre\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"output\"\u003e\n \u003cdiv class\u003d\"title\"\u003e\n Output\n \u003c/div\u003e\n \u003cpre\u003e2\u003cbr\u003e2\u003cbr\u003e1\u003cbr\u003e\u003c/pre\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\u003c/div\u003e"}},{"title":"Note","value":{"format":"HTML","content":"\u003cdiv class\u003d\"note\"\u003e\n \u003cdiv class\u003d\"section-title\"Note/div\u003e\n \u003cp\u003eConsider the first sample case. Initially, the string \u003cspan class\u003d\"tex-font-style-tt\"\u003eaba\u003c/span\u003e occurs \u003cspan class\u003d\"tex-span\"\u003e3\u003c/span\u003e times in the range \u003cspan class\u003d\"tex-span\"\u003e[1, 7]\u003c/span\u003e. Note that two occurrences may overlap. \u003c/p\u003e\n \u003cp\u003eAfter the update, the string becomes \u003cspan class\u003d\"tex-font-style-tt\"\u003eababcbaba\u003c/span\u003e and now \u003cspan class\u003d\"tex-font-style-tt\"\u003eaba\u003c/span\u003e occurs only once in the range \u003cspan class\u003d\"tex-span\"\u003e[1, 7]\u003c/span\u003e.\u003c/p\u003e\n\u003c/div\u003e"}}]}