#NK202505L. Float

Float

题目描述

nn 个关卡,通过第 ii 个关卡可以从 i1i-1 号点到 ii 号点;你从 00 号点出发,并想要依次通过每个关卡到达 nn 号点。每当你尝试一个关卡,你都有概率 pp 通过,和 (1p)(1-p) 失败。

你最开始有一些金币,如果你闯关失败且至少有一个金币,你必须花一个金币停留在当前点并重试(不会留着金币不用,即使你在 00 号点);如果你闯关失败且已没有金币剩余,则你将被送回起点(0 号点)。

给定 mm,请计算对于从 00mm 每一种可能的初始金币数量,你到达终点所需的期望尝试次数,输出时对 998244353998244353 取模。

输入格式

第一行含三个整数 n,m,pn, m, p($1 \le n \le 10^9,\, 1 \le m \le 2\times10^5,\, 0 < p < 998244353$),依次表示关卡数量、最大金币数量和通过关卡的概率;概率已对 998244353998244353 取模。

输出格式

一行含 m+1m+1 个整数,其中第 ii 个数表示初始拥有 i1i-1 个金币时,到达终点的期望尝试次数对 998244353998244353 取模后的结果。

输入输出样例 #1

输入 #1

2 2 499122177

输出 #1

6 499122182 5

输入输出样例 #2

输入 #2

1 3 332748118

输出 #2

3 3 3 3

说明/提示

对于样例 2:在模 998244353998244353 意义下,数值 332748118332748118 对应概率 13\tfrac{1}{3}。此时结果与 mm 无关,因为无论是否有金币,失败时总是返回起点。