时间限制:C/C++/Rust/Pascal 5秒,其他语言10秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
Special Judge, 64bit IO Format: %lld
题目描述
本题数据量较大,建议您选取较快的输入输出方式。
在第二场网络赛中,托姆深刻体会到了仅仅掌握常用算法是完全不够的,对于新算法的学习仍然是不可或缺的。特别是对于多项式相关的算法,更需要深入理解其数学原理。
今天虽然是一个娱乐赛,但是在娱乐的同时,也让我们学习新的算法。通过这道题目,托姆希望大家能够掌握相关的算法,为今后的比赛打下坚实的基础。
给定

个横坐标不同的点
)
,其中

,所有坐标都是非负整数。
接下来有

次询问,每次询问给出一个横坐标

,请你找到一个纵坐标

,使得存在一个最高次不超过

次的多项式
)
,满足:
%20%5Cequiv%20y_i%20%5Cpmod%7B998244353%7D)
对所有

成立
最高次不超过

次的多项式指的是形如
%20%3D%20a_n%20x%5En%20%2B%20a_%7Bn-1%7D%20x%5E%7Bn-1%7D%20%2B%20%5Ccdots%20%2B%20a_1%20x%20%2B%20a_0)
的多项式,其中

是系数(在模

意义下),且

。
例如
%20%3D%202x%5E3%20%2B%203x%5E2%20%2B%20x%20%2B%201)
是一个最高次不超过

次的多项式,因为最高次项为

。
%20%3D%200x%5E3%20%2B%200x%5E2%20%2B%200x%20%2B%209)
是一个最高次不超过

次的多项式,因为最高次项为常数项。
%20%3D%20x%5E%7B3.5%7D%20%2B%202x%5E2%20%2B%201)
不是一个最高次不超过

次的多项式,因为

的次方不是整数。
%20%3D%20x%5E%7B4%7D%20%2B%202x%20%2B%201)
不是一个最高次不超过

次的多项式,因为

最高次项为

。
输入描述:
第一行包含一个正整数
,表示点的个数。
接下来
行,每行包含两个非负整数
和
,表示第
个点的坐标。保证给定的
个点的横坐标
互不相同。
接下来一行包含一个正整数
,表示询问次数。
接下来
行,每行包含一个非负整数
,表示询问的横坐标。
输出描述:
对于每个询问,输出一行,包含一个非负整数
,表示满足条件的纵坐标。若存在多个答案,任意输出一个即可。答案需要对
取模。
示例1
输入
复制
5
1 1
2 4
3 9
4 16
5 25
5
6
7
8
9
10
示例2
输入
复制
4
12 62557
5 1951
9 19891
10 30251
3
1
4
7