#1084. mob的《麻将与概率系统导论》加强版

内存限制:512 MiB 时间限制:6000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Komeiji Koishi

题目描述

在打麻将的同时,mob也在十分刻苦地学习《概率论与数理统计》,他逐渐从书本和麻将实践中得到了一些启发,发现麻将的概率问题复杂性来源于其模型的高度复杂性,于是他试图发明一套新的概率方法来求解这些过于复杂的概率和统计问题。功夫不负有心人,他最终找到了规律并发明了一种他称之为“概率系统”的理念,其中有一种统计问题是整个理论的核心:

nn个概率模式,每个概率模式有两个参数pi,bip_i,b_i,这nn个概率模式组成全集UU,对任何一个UU的子集SS,我们称它的mob值为:SS中所有概率模式对应的bib_i的异或和。此外,我们称SS是合法的当且仅当:SS中所有概率模式所对应的bib_i两两按位与的结果均为00,我们称一个SS出现的概率为SS中所有概率模式对应的pip_i的积。

为了验证你是否掌握了这套概率系统理论,mob给了你mm个询问,每个询问都给出一个xix_i,询问:

所有mobmob值为xx的合法子集的出现概率之和为多少?

由于这个数可能很大,你只需要输出答案对998244353取模的结果即可

输入格式

第一行一个正整数nn,表示概率模式数

2(n+1)2-(n+1)行每行两个正整数pi,bip_i,b_i,分别表示第ii种概率模式的两个参数

接下来一行一个正整数mm表示询问个数

接下来mm行每行一个正整数xix_i,表示询问

输出格式

输出mm行,第ii行一个正整数表示第ii次询问的答案

样例

样例输入 样例输出
3
1 1
1 2
1 3
3
1
2
3
1
1
2

数据范围与提示

n,m105n,m\leq 10^5

0pi<9982443530\leq p_i<998244353

0<bi<2210<b_i<2^{21}

0<xi<2210<x_i<2^{21}