luogu#P9151. 计数题

    ID: 13134 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>动态规划,dp数学洛谷原创O2优化组合数学洛谷月赛

计数题

题目背景

Easy Counting Problem

身のうさを思ひしらでややみなまし そむくならひのなき世なりせば

题目描述

给定长度为 NN0101SS,你可以做若干个操作,形如将长度为 33 的子串变成它们的中位数(注意是变成一个数字),问可以得到多少个不同的串。

答案对 998244353998244353 取模。

输入格式

本题有多组数据。第一行输入数据组数 TT

对于每组数据,仅输入一个字符串 SS 表示给定的 0101 串。

输出格式

对每组数据输出一行一个整数,表示答案对 998244353998244353 取模的结果。

4
1001
111000
101010
111000101010

3
7
3
25

提示

【样例解释】

可以证明,10011001 仅能通过操作获得串 10,01,100110,01,1001 ,因此样例第一组数据的答案为 33


【数据范围】

对于 100%100 \% 的数据,满足 1N5×1061\le N \le 5\times {10}^6Si{0,1}S_i\in\{0,1\}1T51 \le T \le 5

子任务 NN \le 特殊性质 分数
1 1010 55
2 5050 1010
3 300300
4 20002000 1515
5 A 55
6 B
7 105{10}^5 2020
8 3030

特殊性质 A:保证 Si=0S_i=0

特殊性质 B:保证 S2k=0S_{2k}=0S2k+1=1S_{2k+1}=1

字符串下标的编号从 11 开始。