Company: Wipro_14march
Difficulty: medium
You are given a string S of length N which encodes a non-negative number V in a binary form. Two types of operations may be performed on it to modify its value: if V is odd, subtract 1 from it; if V is even, divide it by 2. These operations are performed until the value of V becomes 0. For example, if string S = "011100", its value V initially is 28. The value of V would change as follows: V = 28, which is even: divide by 2 to obtain 14; V = 14, which is even: divide by 2 to obtain 7; V = 7, which is odd: subtract 1 to obtain 6; V = 6, which is even: divide by 2 to obtain 3; V = 3, which is odd: subtract 1 to obtain 2; V = 2, which is even: divide by 2 to obtain 1; V = 1, which is odd: subtract 1 to obtain 0. Seven operations were required to reduce the value of V to 0. Write a function: def solution(S) that, given a string S consisting of N characters containing a binary representation of the initial value V, returns the number of operations after which its value will become 0. Exampl