Code Of The Day: Google Kick Start Problem
Problem
Charles defines the goodness score of a string as the number of indices such that where (-indexed). For example, the string CABABC
has a goodness score of since and .
Charles gave Ada a string of length , consisting of uppercase letters and asked her to convert it into a string with a goodness score of . In one operation, Ada can change any character in the string to any uppercase letter. Could you help Ada find the minimum number of operations required to transform the given string into a string with goodness score equal to ?
Input
The first line of the input gives the number of test cases, . test cases follow.
The first line of each test case contains two integers and . The second line of each test case contains a string of length , consisting of uppercase letters.
Output
For each test case, output one line containing Case #:
, where is the test case number (starting from 1) and is the minimum number of operations required to transform the given string into a string with goodness score equal to .
Limits
Memory limit: 1 GB.
.
.
Test Set 1
Time limit: 20 seconds.
.
Test Set 2
Time limit: 40 seconds.
for at most test cases.
For the remaining cases, .
Sample
2
5 1
ABCAA
4 2
ABAA
Case #1: 0
Case #2: 1
In Sample Case #1, the given string already has a goodness score of . Therefore the minimum number of operations required is .
In Sample Case #2, one option is to change the character at index to B
in order to have a goodness score of . Therefore, the minimum number of operations required is .
Comments
Post a Comment