时间限制:C/C++/Rust/Pascal 4秒,其他语言8秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
你正在玩一个有

轮的游戏。初始等级为

级,血量为

。在每一轮游戏中,如果等级为

,生命值为

,有

的概率升级。升级时,等级将升级为

,血量将减少

,同时此轮游戏结束。由于最高等级是

级,所以当你的等级为

级并升级时,你的血量将变为

,游戏立即结束。如果你在本轮游戏中没有升级,你有

的概率血量减少

,本轮游戏结束。
计算
)
轮后血量为

的概率,答案对

取模。
输入描述:
第一行五个正整数
,其中 

输出描述:
输出
行每行一个数代表答案
示例1
说明
初始时血量为5,要3回合后血量变为1,显然要其中一回合血量扣2,其余两回合血量扣1
第一回合晋升:

第二回合晋升:

第三回合晋升:

答案为

示例2
输出
复制
0
341991121
367875198
935930697
494879403
867916762