SP13940 PIBO2 - Fibonacci vs Polynomial (HARD)
题目描述
定义一个序列 _Pib_(n) 如下:
- _Pib_(0) = 1
- _Pib_(1) = 1
- 对于其他的 n,有 _Pib_(n) = _Pib_(n-1) + _Pib_(n-2) + **P**(n)
其中,**P** 表示一个多项式。
给定两个参数 **n** 和多项式 **P**,要求计算 _Pib_(n) 对 1,111,111,111 取余后的结果。
建议在解决本题之前先尝试[PIBO](../PIBO/),因为它的限制条件较低。
输入格式
第一行输入两个整数 **n** 和 **d**(0 ≤ **n** ≤ 10^5, 0 ≤ **d** ≤ 10),这里 **d** 是多项式的最高次数。
接下来一行包含 **d**+1 个整数 **c** $_{0}$, **c** $_{1}$, …, **c** $_{d}$,表示多项式的各项系数。因此多项式 **P**(x) 可以表示为 Σ**c** $_{i}$ x $^{i}$,其中 0 ≤ **c** $_{i}$ < 1,111,111,111 且 **c** $_{d}$ 不等于 0(除非 **d** 等于 0)。
输出格式
输出一个整数,即结果值。
说明/提示
- 参数范围:0 ≤ **n** ≤ 10^5, 0 ≤ **d** ≤ 10
- 系数范围:0 ≤ **c** $_{i}$ < 1,111,111,111,且当 **d** 不为 0 时,**c** $_{d}$ 必不为 0。
**本翻译由 AI 自动生成**