AT_arc172_b [ARC172B] AtCoder Language
题目描述
AtCoder 语有 $L$ 种不同的字符。由 AtCoder 语的字符组成的 $N$ 个字符的字符串 $s$,满足以下条件的有多少种?请输出答案对 $998244353$ 取模后的结果。
- 字符串 $s$ 的任意一个“$K$ 个字符的子序列”都是不同的。严格来说,从字符串 $s$ 中选出 $K$ 个字符,按照原有顺序连接,得到 $K$ 个字符的字符串的方法有 $_N\mathrm{C}_K$ 种,这些方法得到的所有字符串都互不相同。
$_N\mathrm{C}_K$ 表示从 $N$ 个元素中选出 $K$ 个的方法总数。更严格地说,$_N\mathrm{C}_K$ 等于 $N!$ 除以 $K! \times (N-K)!$。
输入格式
输入以以下格式从标准输入读入。
> $N$ $K$ $L$
输出格式
请输出答案。
说明/提示
### 限制条件
- $1 \leq K < N \leq 500000$
- $1 \leq L \leq 10^9$
- 输入均为整数
### 样例解释 1
将 AtCoder 语的第 $1$ 种字符记为 `a`,第 $2$ 种字符记为 `b`,满足条件的字符串有 `abab`、`baba` 共 $2$ 种。
### 样例解释 2
满足条件的字符串大约有 $10^{86}$ 种,这里输出对 $998244353$ 取模后的 $496798269$。
由 ChatGPT 4.1 翻译