AT_arc168_c [ARC168C] Swap Characters
题目描述
给定一个由 `A`、`B`、`C` 组成的长度为 $N$ 的字符串 $S$。
你可以进行如下操作 $0$ 次或至多 $K$ 次:
- 任意选择 $S$ 中的两个字符,交换它们。
请你求出经过操作后,可能得到的不同字符串的数量,对 $998244353$ 取模。
输入格式
输入以如下格式从标准输入读入:
> $N$ $K$ $S$
输出格式
请输出答案。
说明/提示
## 限制条件
- $1 \leq N \leq 250000$
- $1 \leq K \leq 100$
- $S$ 是由 `A`、`B`、`C` 组成的长度为 $N$ 的字符串。
- 输入的所有值均为整数。
## 样例解释 1
可以得到如下 $4$ 种字符串。
- $S = $`ABC` :不进行操作即可。
- $S = $`BAC` :交换第 $1$ 和第 $2$ 个字符即可。
- $S = $`CBA` :交换第 $1$ 和第 $3$ 个字符即可。
- $S = $`ACB` :交换第 $2$ 和第 $3$ 个字符即可。
由 ChatGPT 4.1 翻译