NC232159. H.荷池堪作镜,盈盈可鉴心。
描述
西南民大航空港校区的梦云湖旁,有一块民族团结碑,每次看见都会肃然起敬,这个时候应该赶快去刷两道数学题啊!
输入描述
一行,一个数
输出描述
由于最后答案可能很大,请输出将答案对 取模的结果
示例1
输入:
9
输出:
28
说明:
前十项的函数值分别为:0,1,2,3,4,6,9,13,19,28,所以 = 28。C++ 解法, 执行用时: 72ms, 内存消耗: 39612K, 提交时间: 2022-01-16 12:11:53
#include<stdio.h> int main() { int a[10000001]={0,1,2,3}; int x,i; scanf("%d",&x); for(i=4;i<=x;++i) { a[i]=a[i-1]+a[i-3]; a[i]=a[i]%1000000007; } printf("%d",a[x]); return 0; }
pypy3 解法, 执行用时: 707ms, 内存消耗: 182360K, 提交时间: 2021-12-26 21:59:44
mod=1e9+7 ans=[0,1,2,3] x=int(input()) ans=ans+[0]*x if x<=3: print(ans[x]) else: for i in range(4,x+1): ans[i]=(ans[i-1]+ans[i-3])%mod print(int(ans[x]%mod))
C 解法, 执行用时: 67ms, 内存消耗: 39544K, 提交时间: 2022-12-18 13:37:48
#include<stdio.h> int main() { int i,s[10000000]={0,1,2,3},x; scanf("%d",&x); for(i=4;i<=x;i++) s[i]=(s[i-1]+s[i-3])%1000000007; printf("%d",s[x]); }