#3921. 魔法字符串
魔法字符串
🐰🐱📜『兔猫信奥学院之魔法字符串』
小兔和小猫最近迷上了加菲老师的神奇魔法课。今天,加菲老师决定教他们一种奇妙的咒语创造法术:
『每一次施法,能在已有的魔法字符串尾部附加若干个连续的
0
或若干个连续的1
。具体来说,每次施法只能做下面之一:』
- 在末尾添加连续的 个
0
;- 在末尾添加连续的 个
1
。
初始的魔法字符串是空的 ""
,通过不断施法,小兔和小猫便能构造出长度不同的魔法字符串。
加菲老师特别指出,只有长度在 到 (包含两端)之间的魔法字符串才是“好”的魔法字符串。
现在,小兔和小猫想知道,他们最多可以构造出多少个不同的“好”魔法字符串呢?
由于答案可能很大,请输出答案对 取余后的结果。
输入格式
一行四个整数 low high zero one
输出格式
一个整数,表示可构造的不同好魔法字符串数目,对 10^9+7 取余。
3 3 1 1
8
样例解释1
可构造出所有长度为3的二进制串,从 "000"
到 "111"
共 种。
2 3 1 2
5
样例解释2
满足条件的魔法字符串为 "00"
, "11"
, "000"
, "011"
, "110"
。