import java.util.Scanner; public class Main { private static final int MOD = 1000000007; private static final int[] dp = new int[10000005]; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); dp[1] = 1; dp[2] = 2; dp[3] = 5; for (int i = 4; i <= n; i++) { dp[i] = (dp[i - 1] * 2 % MOD + dp[i - 3] % MOD) % MOD; } System.out.println(dp[n]); } }
解题思路:
注意事项:
参考代码:
0.0分
0 人评分
【数组的距离】 (C语言代码)浏览:787 |
【明明的随机数】 (C++代码)浏览:834 |
用筛法求之N内的素数。 (C语言代码)浏览:685 |
WU-C语言程序设计教程(第三版)课后习题12.1 (C++代码)浏览:1024 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:943 |
Cylinder (C语言描述,蓝桥杯)浏览:1279 |
判定字符位置 (C语言代码)浏览:849 |
简单的a+b (C语言代码)浏览:491 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:455 |
C语言程序设计教程(第三版)课后习题4.9 (Java代码)浏览:630 |