作者costbook (antitheist)
看板Programming
标题Re: [问题] N!递回快速解
时间Fri Nov 10 18:20:52 2006
※ 引述《qrtt1 (愚人)》之铭言:
: ※ 引述《costbook (antitheist)》之铭言:
: : 如果作业的测资为有限的范围,
: : 那就用查表法吧,先把范围内的
: : 阶层算出来,建立解答表
: : 然後直接查表就好了,超快的
: 呵,也可以动态建表啊 :D
: 这样比存查表法写起来多了一点趣味性
我觉得求大数的阶层比较难(10000!这种),
而且我到现在还没有练习写写看...
不然查表法也没什麽用,一下就爆掉了...
#include<iostream>
using namespace std;
#define TABLE_SIZE 24
int main(){
long long int fact[TABLE_SIZE];
fact[0]=0;
fact[1]=1;
fact[2]=2;
for(long long int i=3;i<TABLE_SIZE;i++){
fact[i]=i*fact[i-1];
cout<<"fact["<<i<<"]="<<fact[i]<<endl;
}
system("pause");
}
结果:
fact[3]=6
fact[4]=24
fact[5]=120
fact[6]=720
fact[7]=5040
fact[8]=40320
fact[9]=362880
fact[10]=3628800
fact[11]=39916800
fact[12]=479001600
fact[13]=6227020800
fact[14]=87178291200
fact[15]=1307674368000
fact[16]=20922789888000
fact[17]=355687428096000
fact[18]=6402373705728000
fact[19]=121645100408832000
fact[20]=2432902008176640000
fact[21]=-4249290049419214848
fact[22]=-1250660718674968576
fact[23]=8128291617894825984
--
树大有枯枝,人多有白痴
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.139.157.195