CF392C.Yet Another Number Sequence

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Everyone knows what the Fibonacci sequence is. This sequence can be defined by the recurrence relation:

_F_1 = 1, _F_2 = 2, F__i = F__i - 1 + F__i - 2 (i > 2).

We'll define a new number sequence A__i(k) by the formula:

A__i(k) = F__i × i__k (i ≥ 1).

In this problem, your task is to calculate the following sum: _A_1(k) + _A_2(k) + ... + A__n(k). The answer can be very large, so print it modulo 1000000007 (109 + 7).

众所周知斐波那契数列是什么。该数列可通过如下递推关系定义:

F1=1, F2=2, Fi=Fi−1+Fi−2 (i>2)F_1 = 1,\ F_2 = 2,\ F_i = F_{i-1} + F_{i-2}\ (i > 2)。

我们通过以下公式定义一个新的数列 Ai(k)A_i(k):

Ai(k)=Fi×ik (i≥1)A_i(k) = F_i \times i^k\ (i \geq 1)。

本题中,你需要计算如下和式:A1(k)+A2(k)+⋯+An(k)A_1(k) + A_2(k) + \dots + A_n(k)。答案可能非常大,因此请输出其对 10000000071000000007(即 109+710^9 + 7)取模的结果。

输入格式

The first line contains two space-separated integers n, k (1 ≤ n ≤ 1017; 1 ≤ k ≤ 40).

第一行包含两个以空格分隔的整数 nn、kk(1 ≤ n ≤ 10171 ≤ n ≤ 10^{17};1 ≤ k ≤ 401 ≤ k ≤ 40)。

输出格式

Print a single integer — the sum of the first n elements of the sequence A__i(k) modulo 1000000007 (109 + 7).

输出一个整数——序列 Ai(k)A_i(k) 的前 nn 项之和对 10000000071000000007(即 109+710^9 + 7)取模的结果。

输入输出样例

  • 输入#1

    1 1

    输出#1

    1
  • 输入#2

    4 1

    输出#2

    34
  • 输入#3

    5 2

    输出#3

    316
  • 输入#4

    7 4

    输出#4

    73825

输入解题思路,AI测评打分。不知道怎么写?

首页