码迷,mamicode.com
首页 > 其他好文 > 详细

【noip2011】【codevs1137】计算系数

时间:2015-09-11 14:05:27      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:

var
   f:array[-1..1001,-1..1001] of longint;
    a,b,m,n,k,i,j:longint;
begin
    readln(a,b,k,n,m);
    f[1,0]:=b;
    f[1,1]:=a;
    for i:=2 to k do
       for j:=0 to k do
        f[i,j]:=(f[i-1,j]*b+f[i-1,j-1]*a) mod 10007;
    writeln(f[k,n]);
end.

不想多说,其实就是一个dp还不带优化。

看到这道题大多数人第一反应应该是公式c(b,k)*a^n*b*m,但是——

这个公式的复杂度和指数有关,并非o(1)的,所以看数据k<=1000显然可以dp

设f[i,j]表示将(ax+by)^i展开后x^j y^(i-j)的系数

初始化f[1,0]=b,f[1,1]:=a;

DP转移方程f[i,j]:=f[i-1,j]*b+f[i-1,j-1]*a

 

喜欢就收藏一下,记得向好朋友推荐哦               

私人qq:1064864324,加备注,有问题来找我,一起探讨一起进步

【noip2011】【codevs1137】计算系数

标签:

原文地址:http://www.cnblogs.com/victorslave/p/4800610.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!