题目名称 2710. 多项式多点求值
输入输出 polynomial_calc_value.in/out
难度等级 ★★★★
时间限制 6000 ms (6 s)
内存限制 512 MiB
测试数据 10
题目来源 GravatarFoolMike 于2017-06-26加入
开放分组 全部用户
提交状态
分类标签
NP问题
分享题解
通过:13, 提交:30, 通过率:43.33%
Gravatarccz181078 100 11.812 s 22.68 MiB C++
GravatarFoolMike 100 13.687 s 7.94 MiB C++
GravatarFoolMike 100 14.072 s 7.94 MiB C++
Gravatarsshockwave 100 14.702 s 96.31 MiB C++
Gravatar131441373 100 16.402 s 32.23 MiB C++
GravatarOwen 100 18.397 s 16.81 MiB C++
GravatarOwen 100 18.918 s 12.81 MiB C++
GravatarOwen 100 19.280 s 16.81 MiB C++
Gravatar131441373 100 20.491 s 32.23 MiB C++
GravatarFoolMike 100 24.714 s 46.08 MiB C++
关于 多项式多点求值 的近10条评论(全部评论)
学习神犇的分块压常技巧,结果-10s
GravatarFoolMike
2017-07-05 09:03 1楼

2710. 多项式多点求值

★★★★   输入文件:polynomial_calc_value.in   输出文件:polynomial_calc_value.out   简单对比
时间限制:6 s   内存限制:512 MiB

【题目描述】

给出一个n-1次多项式f(x)和m个非负整数xi,你需要输出f(xi)的值。

所有运算在模p=998244353意义下进行。(p=119<<23|1,是质数,一个原根是3)

【输入格式】

第一行一个整数n,表示多项式有n项。

第二行有n个整数,第i个整数表示x^(i-1)的系数。

第三行一个整数m,表示需要求的函数值个数。

第四行有m个整数,第i个整数xi表示需要求出f(xi)的值。

【输出格式】

一行m个整数,第i个整数表示f(xi)的值。

【样例输入】

3
1 2 5
5
5 1 3 4 2

【样例输出】

136 8 52 89 25

【数据范围】

第9,10个测试点,n,m<=5,ai<=5,WA的同学可以调试一下自己的程序。

剩下有5个测试点,n,m<65536,n*m的做法应该会TLE吧(也许是我的暴力wys还不够多)。

剩下3个测试点,n,m<=20000。

【注意】

Mike:不要喷我卡常,您写的如果还不如暴力快的话,那这玩意也就没啥实际价值了。暴力踩正解,你问我资瓷不资瓷,我可以明确地告诉你,我是资瓷的。