{"problem":{"name":"Simple String Queries","description":{"content":"You are given a string $S$ of length $N$ consisting of lowercase English letters. Process $Q$ queries of the following two types: *   Type $1$: change the $i_q$\\-th character of $S$ to $c_q$. (Do not","description_type":"Markdown"},"platform":"AtCoder","limit":{"time_limit":2000,"memory_limit":262144},"difficulty":"None","is_remote":true,"is_sync":true,"sync_url":null,"sign":"abc157_e"},"statements":[{"statement_type":"Markdown","content":"You are given a string $S$ of length $N$ consisting of lowercase English letters.\nProcess $Q$ queries of the following two types:\n\n*   Type $1$: change the $i_q$\\-th character of $S$ to $c_q$. (Do nothing if the $i_q$\\-th character is already $c_q$.)\n*   Type $2$: answer the number of different characters occurring in the substring of $S$ between the $l_q$\\-th and $r_q$\\-th characters (inclusive).\n\n## Constraints\n\n*   $N$, $Q$, $i_q$, $l_q$, and $r_q$ are integers.\n*   $S$ is a string consisting of lowercase English letters.\n*   $c_q$ is a lowercase English letter.\n*   $1 \\leq N \\leq 500000$\n*   $1 \\leq Q \\leq 20000$\n*   $|S| = N$\n*   $1 \\leq i_q \\leq N$\n*   $1 \\leq l_q \\leq r_q \\leq N$\n*   There is at least one query of type $2$ in each testcase.\n\n## Input\n\nInput is given from Standard Input in the following format:\n\n$N$\n$S$\n$Q$\n$Query_1$\n$\\vdots$\n$Query_Q$\n\nHere, $Query_i$ in the $4$\\-th through $(Q+3)$\\-th lines is one of the following:\n\n$1$ $i_q$ $c_q$\n\n$2$ $l_q$ $r_q$\n\n[samples]","is_translate":false,"language":"English"}],"meta":{"iden":"abc157_e","tags":[],"sample_group":[["7\nabcdbbd\n6\n2 3 6\n1 5 z\n2 1 1\n1 4 a\n1 7 d\n2 1 7","3\n1\n5\n\nIn the first query, `cdbb` contains three kinds of letters: `b` , `c` , and `d`, so we print $3$.\nIn the second query, $S$ is modified to `abcdzbd`.\nIn the third query, `a` contains one kind of letter: `a`, so we print $1$.\nIn the fourth query, $S$ is modified to `abcazbd`.\nIn the fifth query, $S$ does not change and is still `abcazbd`.\nIn the sixth query, `abcazbd` contains five kinds of letters: `a`, `b`, `c`, `d`, and `z`, so we print $5$."]],"created_at":"2026-03-03 11:01:14"}}