这道题看起来有点烦,但是如果做起来非常简单 ,而
,则
而 又等于
,所以我们可以一直递推下去,直到
,所以
,这就是
啊!
我在想为什么不高精,这样更难些,不管了,上代码:
#include<bits/stdc++.h> using namespace std; long long n,ans = 1,k;//俗话说得好,不开long long见祖宗 int main(){ cin >> n; k = pow(10,9) + 7;//模 for(int i = 1;i <= n;i++) ans = ans * i % k;//一个一个乘,别插队,注意模 cout << ans;//美滋滋的AC return 0; }
附:我比赛时不小心把1e9+7看成1e9+9,花了20分钟才找到错误!