问个问题:为什么一道入门通过率这么低?
我的猜想:你们是不是知道13!会爆int,所以一看到要算10000!就想开高精?
开高精也行,但完全没必要,搞不好还会看到好几只红色的WA并听取WA声一片,可以用下面的东西化解。
模运算的性质(在这题里面很重要,能避免开高精):
{"mod"就是数学中的取模运算,把它看成'%'就行}
1、(a mod m) mod m = a mod m
2、(a + b) mod m = [(a mod m) + (b mod m)] mod m
3、(a - b) mod m = [(a mod m) - (b mod m)] mod m
4、(a × b) mod m = [(a mod m) × (b mod m)] mod m
这里仅需第4条
看到这里,是不是有思路了?
边乘边取模!!!!!!!!!!!!
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
递归解释:
定义:自己去找
阶乘递归:
解释完毕,上代码
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
三个cpp
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
两个py
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
结尾的废话:
思路明确后代码就简单了。(这个不是废话"v")
还有,为什么编辑题解的时候没有自动对齐,还要我一个一个地去打空格?
致敬自己编程生涯第一篇题解"v"
有什么问题发评论区,我看到就会回复
点个赞再走吧"v"(这个也不是废话"v")