Given a positive integer N, count all possible distinct binary strings of length N such that there are no consecutive 1’s.
Examples:
Input: N = 2 Output: 3 // The 3 strings are 00, 01, 10 Input: N = 3 Output: 5 // The 5 strings are 000, 001, 010, 100, 101
Recommended: Please solve it on “PRACTICE ” first, before moving on to the solution.
PHP
<?php// PHP program to count all distinct// binary stringswithout two// consecutive 1'sfunction countStrings($n){ $a[$n] = 0; $b[$n] = 0; $a[0] = $b[0] = 1; for ($i = 1; $i < $n; $i++) { $a[$i] = $a[$i - 1] + $b[$i - 1]; $b[$i] = $a[$i - 1]; } return $a[$n - 1] + $b[$n - 1];} // Driver Code echo countStrings(3) ;// This code is contributed by nitin mittal?> |
5
Time Complexity: O(n)
Auxiliary Space: O(n)
Please refer complete article on Count number of binary strings without consecutive 1’s for more details!
<!–
–>











Please Login to comment…