女神苏小糖。 @ 2019-07-09 09:13:13
long long a[5050]; long long f(int n){ int t; if(a[n]!=0) return a[n]; if(n<=2){ return n; }else{ return f(n-1)+f(n-2);
}
} int main(){ int a,n; scanf("%d",&n); a=f(n); printf("%d",a); return 0; }
by zrzluck99 @ 2019-07-09 09:19:28
希望更丰富的展现?使用Markdown
by XeCtera @ 2019-07-09 09:19:38
高精
by 1saunoya @ 2019-07-09 09:31:14
为啥用高精我觉得int128不错/xyx
by Lstdo @ 2019-07-09 09:37:12
原来你的逻辑是样例过了就是A了啊。。。自己看看输出类型。。。再不懂就别做了吧 = =+
by _Felix @ 2019-07-09 09:41:28
printf("%d",a);
to
printf("%lld",a);
上面的巨佬tql
by 蒟蒻甜心面包 @ 2019-07-09 09:57:29
问题一:long long 的函数输出时又用a转换成了int 型;
问题二:精度不够,例如输入5000,输出就会爆炸,建议先学习 [模板]高精度加法;
问题三:以后提问时发代码不要圧行,看着有点难受,容易看漏看错,不利于发现问题;
以上就是我愚笨肤浅的蒟蒻看法;
by Azazеl @ 2019-07-09 11:11:46
针对这道题,python
是个不错的选择
by 女神苏小糖。 @ 2019-07-09 14:59:09
@princess欣_清凌 谢谢
by 天有不测风云 @ 2019-07-30 14:39:49
by Eororr @ 2020-04-24 10:30:15
需高精