CRAN04 - Audition
Penny is a terrible waitress and even worse actress, however recently she applied for a role in an upcoming TV series. Even though she thought she had no chance, she was called for an audition. She was very happy about it until she found out that her character in this new series will be a studious, high IQ girl named Megan. Producer told her that to get the role of Megan she had to prove that her mind can handle a bit of mathematics and reasoning. If she passed the test then she will be given the role of Megan. The test was as follow.
The people (Boys and Girls) who came for audition are standing in a line in a random order. Producer has to select exactly K boys for the show. So he asks Penny to tell how many ways can he select two numbers i and j such that the number of boys standing between these (including I and j) indexes is exactly K.
Penny desperately needs this role. Everybody knows that Penny is not a very smart and requests you to help her.
First line contains T – The number of test cases.
Next line contains space separated N and K.
N – The total number of boys and girls who came to audition.
K – The number of the boys who must be there between each (i, j) pair.
Next line contains a non-empty string consisting of '1' and '0'.
1 represents Boy.
0 represents Girl.
The number of (i, j) pairs such that the number of boys between index i and j, both inclusive is equal to K.
using ds which have logn tc may lead to tle.
Be careful of K=0. Depending on your solution, it will make you get wrong answer after 7th case
take care of overflows :p
two pointer got AC
take care of the case with k=0 , and ans can be very large , nd there is a O(n) solution and i=j is a valid pair too
AC O(n) solution with 2 pointers
Using Dp but gettin WA in 7th test case ...
May I assume that the string has length N?
did using binary search O(nlogn) solution.
3rd rank with O(n) soln. :)