[普通递推数列] 转自《信息学奥赛之数学一本通》

Posted yangxuejian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[普通递推数列] 转自《信息学奥赛之数学一本通》相关的知识,希望对你有一定的参考价值。

[普通递推数列]

问题描述

给出一个k阶齐次递推数列f[i]的通项公式
\[ f[i] = \prod_j = 1^k a_jf_i-j \]
以及初始值f[0], f[1], f[2], ··· , f[k - 1], 求f[n].

输入格式

第一行两个整数n, k;

第二行k个整数,a[1] ~ a[k]

第三行k个整数,f[0] ~ f[k - 1]

输出格式

一行一个整数p, 是f[n] % 10000 的结果

example input

10 2

1 1

1 1

example output

89


solution
\[ 令 F = \beginVmatrix f_i - 1\f_i - 2\\vdots\f_i - k \endVmatrix, F^` = \beginVmatrix f_i\f_i - 2\\vdots\f_i-k+1 \endVmatrix\\ 设F * A = F ^ `,通过比较,可知:\A = \beginVmatrix a_1 \quad a_2 \quad a_3 \quad \cdots \quad a_n\1 \quad \; 0 \quad \; 0 \quad \; \cdots \quad \; 0 \0 \quad \; 1 \quad \; 0 \quad \; \cdots \quad \; 0 \\vdots \quad \; \vdots \quad \; \vdots \quad \; \ddots \quad \; \vdots \0 \quad \; 0 \quad \; \cdots \quad \;1 \quad \; 0 \\endVmatrix\于是, 若有 F_0 = \beginVmatrix f_k - 1\f_k - 2\\vdots\f_0 \endVmatrix,\则\F_i - k + 1 = \beginVmatrix f_i\f_i - 1\\vdots\f_i - k + 1 \endVmatrix, ans = F_i - k + 1[1][1],求解即可 \]

以上是关于[普通递推数列] 转自《信息学奥赛之数学一本通》的主要内容,如果未能解决你的问题,请参考以下文章

信息学奥赛一本通要多少钱

信息学奥赛一本通为啥不通过

长春市哪里有卖这本信息学奥赛一本通c++的书店?

信息学奥赛一本通 1.2 二分与三分

信息奥赛一本通 1060:均值

信息学奥赛一本通 提高篇 序列第k个数 及 快速幂