AC自动机fail树dfs序建可持久化线段树
题号:NC222112
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

whaleshark在学习AC自动机的时候,看到了一副经典对联:

上联:AC自动机fail树dfs序建可持久化线段树

下联:后缀自动机next指针dag图上跑SG函数

在感慨AC自动机神奇的同时,whaleshark也想利用AC自动机AC!于是他决定自己也要造一台AC自动机!

经过不懈的努力,AC自动机终于被造好了!这台AC自动机的能够输出上联,也就是“AC自动机fail树dfs序建可持久化线段树”这一字符串。

可是机器突然出现了故障,输出的时候每个字符有一定的几率无法被输出!

他研究了一会,发现AC自动机输出的时候,其中的每个字符无法被输出的几率都是一样的!

由于whaleshark是初学者,他认为当一个字符串含有子序列“AC”的时候,这个字符串就会被AC。

子序列是指去除字符串中的某些字符,且不改变其他字符的相对位置而形成的新序列

例:"ACE"是"ABCDE"的子序列,"AEC"则不是。

现在已知每个字符无法被输出的概率,whaleshark想知道这台AC自动机输出一次被AC的概率。

答案对998244353取模。

输入描述:

输入第一行包括一个整数T(T<=1e5),表示有T组样例

每组测试样例包含一个整数n(0 <= n <= 100),代表每一个字有n%的几率无法输出

输出描述:

输出T行,第i行为第i组测试用例的答案
示例1

输入

复制
2
0 
100

输出

复制
1
0

说明

当故障率为0的时候一定能AC
当故障率为100%的时候一定不能AC
示例2

输入

复制
2
1
2

输出

复制
138057195
871666970