/* Fac(N) = 1*2*3*……*N 递归方式实现: 1 N <= 1 Fac(N) Fac(N-1)*N N >= 2 */ long long Fac(int N) { if(N <= 1) return 1; return Fac(N-1)*N; } /* 循环方式:从1乘到N即可 */ long long Fac(int N) { long long ret = 1; for(int i = 2; i <= N; ++i) { ret *= i; } return ret; }
/* Fac(N) = 1*2*3*……*N 递归方式实现: 1 N <= 1 Fac(N) Fac(N-1)*N N >= 2 */ long long Fac(int N) { if(N <= 1) return 1; return Fac(N-1)*N; } /* 循环方式:从1乘到N即可 */ long long Fac(int N) { long long ret = 1; for(int i = 2; i <= N; ++i) { ret *= i; } return ret; }