Question
Given a number n , consider all 2 n sequences of as and bs that have length n . A sequence is called a good
Given a number n, consider all 2n sequences of as and bs that have length n. A sequence is called a good one if and only if there are no two bs in a row anywhere in it. You have to count the total number N(n) of good sequences of length n. Design an efficient algorithm for this problem. Explain why your algorithm yields the correct solution.
For example, if n = 4, the following sequences are good: aaaa, aaab, aaba, abaa, baaa, abab, baab, baba which yields the answer N(4) = 8. Note, that you do not need to print all good sequences; the only thing you have to do is to find the number N(n).
Hints.
- Could you use divide-and-conquer or dynamic programming?
- Could you reduce the problem for n to the problems for i < n?
- What characters can be at the end of a good sequence?
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started