Number of possible binary strings of length k
限制是:不能有连续的0, 1可以连续, 问拼成长度为k的串, 可能有多少个。
方法
f0(n)表示长度为n的串, 结尾为0,符合上述要求的不同字符串个数
f1(n)表示长度为n的串, 结尾为1,符合上述要求的不同字符串个数
那么f(n) = f0(n) + f1(n), 明显 f1(n) = f1(n-1) + f0(n-1), f0(n) = f1(n-1),
于是 f(n) = f1(n-1) + f0(n-1) + f1(n-1) = 2 * f1(n-1) + f0(n-1)
可以使用动态规划计算。
也可以只求 f1(k)。