#ATarc168c. [ARC168C] Swap Characters

[ARC168C] Swap Characters

题目描述

给定一个由 ABC 组成的长度为 NN 的字符串 SS

你可以进行如下操作 00 次或至多 KK 次:

  • 任意选择 SS 中的两个字符,交换它们。

请你求出经过操作后,可能得到的不同字符串的数量,对 998244353998244353 取模。

输入格式

输入以如下格式从标准输入读入:

NN KK SS

输出格式

请输出答案。

样例 1

输入

3 1
ABC

输出

4

样例 2

输入

3 2
ABC

输出

6

样例 3

输入

4 5
AAAA

输出

1

样例 4

输入

30 10
CACCABAABBABABBCBBCAAACAAACCCA

输出

42981885

说明/提示

限制条件

  • 1N2500001 \leq N \leq 250000
  • 1K1001 \leq K \leq 100
  • SS 是由 ABC 组成的长度为 NN 的字符串。
  • 输入的所有值均为整数。

样例解释 1

可以得到如下 44 种字符串。

  • S=S =ABC :不进行操作即可。
  • S=S =BAC :交换第 11 和第 22 个字符即可。
  • S=S =CBA :交换第 11 和第 33 个字符即可。
  • S=S =ACB :交换第 22 和第 33 个字符即可。

由 ChatGPT 4.1 翻译