problem description
given an integer n(0 ≤ n ≤ 10000), your task is to calculate n!
input
one n in one line, process to the end of file.
output
for each n, output n! in one line.
sample input
1 2
3sample output
1 2
6題意:求n的階乘;
萬進製思想:用陣列存資料,每個元素存4位數;
eg:10的階乘,迴圈到7的時候 sum==5040 ,a[1]=5040;
到8的時候 a[1]*8=40320;
這個時候temp=a[1]/10000;
a[1]%=10000;
再把temp存到下一位;
到9的時候 a[1]*9=320*9=2880;
temp=0;
a[2]*9+temp=4*9+0=36;
到10的時候 a[1]*10=28800
temp=2;a[1]=8800;
a[2]=a[2]*10+temp;
**:
#include
#include
int a[10009];
int n;
void get_ans()
if(temp > 0)
}printf("%d", a[k]);
for(int i = k-1; i >= 1; i--)
printf("\n");
return;
}int main()
return
0;}
HDU 1042 大數的階乘(萬進製)
望各位大佬指點指點given an integer n 0 n 10000 your task is to calculate n inputone n in one line,process to the end of file.outputfor each n,output n in one l...
hdu 1042 大數階乘20140730 c
題目大意 求n 其中n的數值比較大,0 n 10000,多組數,每組乙個n,要求輸出n!解題分析 這道題沒有思路,是大數相乘的結果,看過別人的 知道可以用萬進製儲存計算。萬進製,舉個例子說明 107924372 15,107924372這個數用完進製存,四個數字佔一位,一共佔三位,a 0 4372,...
hdu1042(大數乘法 )
計算n!1 n 10000 在去南昌icpc邀請賽之前,勳宇帶著我們做過大數的題,剛好也是這個題。而我影響最深刻的就是運用到萬進製,顧名思義,以一萬為進製,因為n!是個很大的數,所以只能用陣列去存。需要注意的是列印時,倒敘且 04d,不足的用零去補。附上 include include void f...