求导

题目描述

给定一个n次多项式 ,求它在a[n]x^n+a[n-1]x^(n-1)+a[n-2]x^(n-2)+...+a[0],求它在x=x0处的导函数。

输入

有多组测试数据。
第一行一个正整数T。
接下来3T行,对于每组数据,
第一行一个正整数n,表示多项式的次数;
第二行n+1个整数,表示这个多项式。第i个整数表示ai。
第三行一个整数x0,表示你需要求当x=x0时,该多项式的导函数。

输出

输出共T行。
对于每组数据,输出一行一个整数,表示x=x0时,该多项式的导函数对998244353取模的结果。保证答案是有理数。
若答案取模后<0,请输出答案加998244353后的结果。

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 const ll p=998244353;
 5 ll t,n,a[200000],x,x1,k,ans;
 6 int main() {
 7     scanf("%lld", &t);
 8     while (t--) {
 9         scanf("%lld", &n);
10         for (ll i = 0; i <= n; i++) {
11             scanf("%lld", &a[i]);
12         }
13         scanf("%lld", &x);
14         x1 = 1;
15         ans = 0;
16         for (ll i = 1; i <= n; i++) {
17             k = a[i] * i % p;
18             k = k * x1 % p;
19             ans = (ans + k+p) % p;
20             x1 = x1 * x % p;
21         }
22         printf("%lld
", ans);
23     }
24 }
View Code
原文地址:https://www.cnblogs.com/Accpted/p/11203338.html