题目描述:
代码如下:
1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #define MOD 1000000007 5 6 long long a[1001] = {0}; 7 long long b[1001] = {0}; 8 9 int main(void) 10 { 11 int i,n; 12 long long sum; 13 long long a[1001],b[1001]; 14 scanf("%d",&n); 15 16 memset(a,0,sizeof(a)); 17 memset(b,0,sizeof(b)); 18 19 b[1] = 1; 20 b[2] = 2; 21 a[1] = 1; 22 a[2] = 6; 23 for (i=3 ; i<=n ; i++) 24 { 25 b[i] = (b[i-1]*2%MOD); 26 a[i] = (2*a[i-1]+b[i]+4*a[i-2])%MOD; 27 } 28 29 sum = 4*a[n]; 30 for (i=2 ; i<n ; i++) 31 { 32 sum += ((8*b[n-i]*a[i-1])%MOD + (8*a[n-i]*b[i-1])%MOD)%MOD; 33 sum %= MOD; 34 } 35 36 if (n==1) 37 sum = 2; 38 39 printf("%ld",sum); 40 return 0; 41 }
代码参考:https://blog.csdn.net/cc_sonia/article/details/80375854
解题思路:
扫描二维码关注公众号,回复:
5593698 查看本文章
剩下的,就是走某一步(非顶角)的行走方案,具体参照上面博客提到的解法