U496834 随机数生成器

题目背景

[暴力](https://www.luogu.com.cn/paste/3x2vakow) [discuss](https://www.luogu.com.cn/discuss/973408)

题目描述

你有一个随机数生成器,可以**等概率**地产生 $1 \sim n$ 的任意正整数。 定义一次 $\text{roll}$ 操作为用该生成器生成一个数。 但是这个生成器有个特性:可能会产生重复的数。如果产生了重复的数 $a$,你需要再 $\text{roll}$ 一次,这时它会保证以后**永久**不再产生 $a$ 了。 也就是说,比如可能在生成一次数字 $1$ 后再生成一次数字 $1$,此后永久不再生成数字 $1$。 你需要求出要产生 $k$ 个**两两不同**的正整数,期望进行多少次 $\text{roll}$ 操作 ?答案可能是小数,你需要将其对 $998244353$ 取模后输出。 定义:两种方案不同,当且仅当操作次数不同或存在有一次产生的数不同。

输入格式

一行两个正整数 $n,k$。

输出格式

输出一行一个整数表示答案。

说明/提示

【样例 1 解释】 答案为 $\displaystyle\frac{5}{2}$。 【样例 2 解释】 合法的操作序列有: 长度为 $3$ 的:$(1,2,3),(1,3,2),(2,1,3),(2,3,1),(3,1,2),(3,2,1)$,共 $6$ 种情况。 长度为 $4$ 的:穷举可得共 $18$ 种情况。 同理可得长度为 $5$ 的操作序列共有 $18$ 种情况。 因此期望为 $\displaystyle\frac{3\times 6+4\times18+5\times 18}{6+18+18}=\frac{30}{7}$,对 $998244353$ 取模,输出 $713031685$。 对于 $10\%$ 数据,$k=1$。 对于 $30\%$ 数据,$k,n\leq 6$ 对于 $50\%$ 数据,$n=k$。 对于 $80\%$ 数据,$k,n\leq 10^3$ 对于 $100\%$ 数据,$1\leq k\leq n\leq 10^6$。