数列定义:
直接按定义从第 1 项迭代到第 n 项即可,过程中对每次运算取模 MOD = 1_000_000_007,避免溢出。
相关算法:简单线性递推(动态规划的最基础形式)。
核心实现:维护当前值 x,从 i=2..n 依次根据奇偶更新:
小红拿到了一个数列,数列的前几项是: {1,2,4,5,10,11,22,......}
这个数列的规律是:
第一个数是 1 。
从第二个数开始,第偶数项比前一个数多 1 。
第奇数项为前一个数乘以 2 。
小红想知道,这个数列的第 n 个数是多少? 由于答案可能过大,请对 109+7 取模。
一个正整数 n
1≤n≤105
一个正整数,代表数列的第 n 项对 109+7 取模的值。
输入
2
输出
2
说明
数列的第 2 项为 2
输入
8
输出
23
说明
数列的第 8 项为 23