斯特公式是取n次幂近似值的数学公式。 一般来说,当n较大时,n阶幂的计算量足够大,因此斯特林公式足够容易使用。 另外,即使在n很小的时候,斯特林公式的可取值也足够准确。

公式如下。

斯特林公式的编程写法: n!=sqrt(2*pi*n ) ) n/e ) ^N; (pi=3.1415926=ACOS(-1.0 ),e=2.718 ) )。

斯特林公式的变换: lgN!=(LG(2*pi ) lgN )/2n* ) lgn-lge ); //1为长度。

通常求出十进制的长度并将lg更换为log10即可。

模板代码:

# include bits/stdc.husingnamespacestd; constintpi=ACOS(-1.0; int main () { int n; wile(cinn ) { double ans; ans=(0.5*log )2*pi*n ) ) log(n-1 ) )/log(10 ); cout(longlong ) ans 1endl; }