编程题
### 问题描述
有一个特殊的硬币,每次扔硬币扔出正面的概率为 $p$,扔出反面的概率为 $1-p$,每次扔硬币的结果相互独立。$p$ 由一个分式 $\frac{a}{b}$ 给出。
现在 Alice 扔 $n$ 次这个特殊的硬币。Alice 的初始分数为 $0$,每次扔硬币如果扔出正面,Alice 的得分增加 $1$,如果扔出反面,Alice 的得分减少 $1$。特殊的,如果在一次扔硬币前 Alice 的分数为 $0$,如果扔出反面,Alice 的分数不会减少。
求 Alice 在扔 $n$ 次硬币后分数的数学期望,答案对 $998244353$ 取模。
### 输入格式
输入第一行包含三个整数 $n,a,b$,分别表示扔硬币的总次数,$p$ 的分子和 $p$ 的分母。
### 输出格式
一个整数,表示 Alice 在扔 $n$ 次硬币后分数的数学期望,答案对 $998244353$ 取模。
### 样例输入
```text
3 1 2
```
### 样例输出
```text
1
```
### 说明
扔硬币的总次数为 $3$,每次扔硬币扔出正面和反面的概率均为 $\frac{1}{2}$。
扔硬币共有 $8$ 种可能的结果,每一种出现的概率均为 $\frac{1}{8}$。以下用 $0$ 和 $1$ 表示扔硬币的结果,$1$ 表示扔出正面,$0$ 表示扔出反面。
1. 扔硬币的结果为 $(1,1,1)$,Alice 三次扔硬币均获得 $1$ 分,最后分数为 $3$。
2. 扔硬币的结果为 $(1,1,0)$,Alice 前两次扔硬币各获得 $1$ 分,第三次扔硬币失去 $1$ 分,最后分数为 $1$。
3. 扔硬币的结果为 $(1,0,1)$,Alice 第一次扔硬币获得 $1$ 分,第二次扔硬币失去 $1$ 分,第三次扔硬币获得 $1$ 分,最后分数为 $1$。
4. 扔硬币的结果为 $(1,0,0)$,Alice 第一次扔硬币获得 $1$ 分,第二次扔硬币失去 $1$ 分,第三次扔硬币虽然扔出反面,但由于此时 Alice 分数为 $0$,不失去分数。最后分数为 $0$。
5. 扔硬币的结果为 $(0,1,1)$,Alice 第一次扔硬币扔出反面,但因为分数为 $0$ 不失去分数。第二次和第三次扔硬币各获得 $1$ 分,最后分数为 $2$。、
6. 扔硬币的结果为 $(0,1,0)$,Alice 第一次扔出反面,分数为 $0$ 不失去分数。第二次扔出正面获得 $1$ 分,第三次扔出反面失去 $1$ 分,最后分数为 $0$。
7. 扔硬币的结果为 $(0,0,1)$,Alice 前两次扔出反面,分数为 $0$ 不失去分数。第三次扔出正面获得 $1$ 分,最后分数为 $1$。
8. 扔硬币的结果为 $(0,0,0)$,Alice 三次均扔出反面,分数为 $0$ 不失去分数。最后分数为 $0$。
扔 $3$ 次硬币后分数的数学期望为 $\frac{3+1+1+0+2+0+1+0}{8}=1$。
### 评测数据规模
对于 $20$% 的评测数据,$1\leq n \leq 5000$。
对于 $100$% 的评测数据,$1\leq n \leq 10^5$,$1\leq a < b <998244353$。