spoj#CONSEC. Consecutive Letters
Consecutive Letters
You are given a string S containing only uppercase English letters. There are Q queries. Each query can be of two types,
-
1 i: Find the maximum size of the segment [b, e] where 0 ≤ b ≤ i ≤ e < |S| and substring S[b...e] contains only the letter S[i]. A Substring is a contiguous sequences of characters in a string.
-
2 i: Change the character in index i with the character ‘#’.
For both type of queries, S[i] will not contain the character ‘#’.The characters of the string are indexed from 0.
Input
The first line contains number of test cases T (1 ≤ T ≤ 15).
For each test cases, the first line contains the string S (1 ≤ |S| ≤ 200000). The 2nd line contains number of queries Q (1 ≤ Q ≤ 100000). Each of the next Q lines contains one query in the format mentioned in the problem statement.
Output
For each test case, first print the test case number and output of every query of type 1 in a single line.
Sample Input Output for Sample Input
2 AABBBCCCC 5 1 0 2 1 1 0 2 2 1 3 XXYYY 3 1 3 2 3 1 2 |
Case 1: 2 1 2 Case 2: 3 1 |
Warning: The input file is huge, please use fast I/O.
Note: The dataset and timelimit have been modified to fit SPOJ.