CF2109E.Binary String Wowee
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Mouf 觉得主题太无聊了,所以他决定这道题不使用任何主题。
给定一个长度为 n 的二进制∗字符串 s。你需要精确执行 k 次以下操作:
- 选择一个下标 i(1≤i≤n)满足 si=0;
- 然后翻转†所有 sj(1≤j≤i)。
你需要计算执行所有 k 次操作的可能方式数量。
由于答案可能非常大,请输出其对 998244353 取模的结果。
如果在任何步骤中选择的下标不同,则认为两个操作序列是不同的。
∗ 二进制字符串是指仅由字符 0 和 1 组成的字符串。
† 翻转二进制字符是指将其从 0 变为 1 或反之。
输入格式
每个测试包含多个测试用例。第一行包含测试用例数量 t(1≤t≤100)。接下来是测试用例描述。
每个测试用例的第一行包含两个整数 n 和 k(1≤k≤n≤500)——分别表示二进制字符串 s 的长度和需要执行操作的次数。
第二行包含一个长度为 n 的二进制字符串 s,仅由字符 0 和 1 组成。
保证所有测试用例的 n 之和不超过 500。
输出格式
对于每个测试用例,输出一个整数——表示精确执行 k 次操作的可能方式数量,对 998244353 取模的结果。
输入输出样例
输入#1
5 3 1 010 3 2 000 5 4 01001 8 8 11001100 20 20 10010110101101010110
输出#1
2 3 10 27286 915530405
说明/提示
第一个测试用例解释:
所有可能的操作序列如下:
- 010i=1110
- 010i=3101
第二个测试用例解释:
所有可能的操作序列如下:
- 000i=1100i=2010
- 000i=1100i=3011
- 000i=2110i=3001
翻译由 DeepSeek V3 完成
输入解题思路,AI测评打分。不知道怎么写?