[原创]北信科1011 K. paulzhou和方程 [组合数学+差分序列]【数学】
2017-06-06 12:41:52 Tabris_ 阅读数:603
博客爬取于2020-06-14 22:40:06
以下为正文
版权声明:本文为Tabris原创文章,未经博主允许不得私自转载。
https://blog.csdn.net/qq_33184171/article/details/72877015
题目链接:http://acm.hdu.edu.cn/diy/contest_showproblem.php?cid=31989&pid=1011
———————————————————————————————————————————
K. paulzhou和方程
Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/102400K (Java/Other)
Total Submission(s) : 28 Accepted Submission(s) : 7
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
众所周知,paulzhou的数学不太好。现在他有一个问题,希望你帮他解答:
给定一元n次方程$f_x=c_0+c_1*x+c_2\dot{}{}x^2+...+c_n\dot{}{}x^n$
定义$f_i$的前k项和
$$
s_k\sum_{i=0}^{k-1}f_i
$$
现给出n、n+1个各项的系数$c_i$以及k,求$s_k%10007$
其中
Input
第1行输入T(1≤T≤10),代表有T组数据。
紧接着每3行分别为n,各项系数,k,输入数据均为正整数。
Output
每组测试数据输出一行,输出$f_x$的前k-1项和$$
s_k\sum_{i=0}^{k-1}f_i
$$并对10007取模。
Sample Input
1
4
1 -2 3 1 0
3
Sample Output
21
Author
Kirai
———————————————————————————————————————————
这题用到了差分序列 详情见《组合数学(原书第5版)》翻译版 P169
查分序列:
设有一个序列$h_0,h_1,h_2,,,,h_n$
它的一阶差分序列是
$$
△h_i=h_{i+1}-h_i
$$
对应二阶差分序列为
$$
△^2h_i=△h_{i+1}-△h_i
$$
由此得到差分表(看起来很难看啊 意思意思就行了)
$$
h_0\ \ \ \ h_1\ \ \ \ h_2\ \ \ \ h_3 .....\△h_0\ \ \ \ △h_1\ \ \ \ △h_2.....\...
$$
根据性质能够得到(证明看书吧..)
$$
h_x=\sum_{i=0}^{n}C(x,i)*△^ih_i
$$
$$
\sum_{i=0}^{n} \sum_{j=0}^{k-1}C(j,i)*△^ih_0
$$
由
$$
\sum_{i=0}^{n}C(m,i) = C(n+1,m+1)
$$
故
$$
\sum_{i=0}^{n} \sum_{j=0}^{k-1}C(j,i)*△^ih_0\ =\sum_{i=0}^{n}C(k,i+1)*△^ih_0
$$
注:取模的时候最好都(x%MOD+MOD)%MOD
附本题代码
———————————————————————————————————————————
# include <bits/stdc++.h> |


