高精度阶乘
2016-10-06 19:56
141 查看
。。。其实就是高精度乘法的翻版,洛谷水题,不解释了。。。
#include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> using namespace std; struct T{ int x[20000],len; T(int z=0){ memset(x,0,sizeof(x)); if(z==1){x[0]=1;len=1;} } }; T operator *(T a,int b){ T res; res.len=a.len; for(int i=0;i<a.len;i++){ res.x[i]+=a.x[i]*b; res.x[i+1]+=res.x[i]/10; res.x[i]%=10; } while(res.x[res.len]){ res.x[res.len+1]+=res.x[res.len]/10; res.x[res.len]%=10; ++res.len; } return res; } int main(){ int i,j,k,m,n; int t; scanf("%d",&t); while(t--){ T sum=1; scanf("%d%d",&n,&m); for(i=1;i<=n;i++){ sum=sum*i; } int ans=0; for(i=sum.len-1;i>=0;i--){ if(sum.x[i]==m)ans++; //printf("%d",sum.x[i]); } printf("%d\n",ans); } return 0; }
相关文章推荐
- 高精度阶乘、乘方排列组合
- 用高精度方法计算n! ,并显示n!(阶乘)的值。
- 高精度总结(高精度类和重载运算高精度阶乘)
- 大数相加,高精度阶乘,大整数进制转换,大整数判断被小整数整除(JOJ--1029)
- HDU1066--高精度求阶乘最后非零位
- JAVA高精度1_大数相加_阶乘
- 大数_高精度阶乘
- 高精度加法,乘法,阶乘
- 9、 大数,高精度计算---大数阶乘
- 阶乘计算(高精度)
- 高精度之大数阶乘
- 计算阶乘 高精度10000! 5000MS内
- 白书练习 高精度阶乘
- 大数据阶乘运算-java高精度运算
- 阶乘高精度计算
- N的阶乘大数据高精度写法
- HDU 1042 N!(高精度计算阶乘)
- 【模板】高精度阶乘
- 高精度运算——阶乘
- ACM HDU 1042 N!(高精度计算阶乘)