阶乘因式分解(一)
来源:互联网 发布:php网站源码怎么修改 编辑:程序博客网 时间:2024/06/13 22:33
阶乘因式分解(一)
描述
给定两个数m,n,其中m是一个素数。
将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m。输入
第一行是一个整数s(0 < s <= 100),表示测试数据的组数
随后的s行, 每行有两个整数n,m。输出
输出m的个数。样例输入
2
100 5
16 2样例输出
24
15
代码示例
#include<stdio.h>#include<math.h>int sushu(int n){ int i; if(n==1) return 2; if(n==2) return 1; for(i=2;i<=sqrt(n);i++){ if(n%i==0) { return 0;} } return 1;}int jiecheng(int n){ int i,s=1; for(i=1;i<=n;i++){ s*=i; } return s;}int main(){ int n,m,k=0,i; int j,j_t,s; int a,b; int yinzi[10000]; scanf("%d",&s); for(a=1;a<=s;a++){ b=0; scanf("%d %d",&n,&m); for(i=0;i<10000;i++){ yinzi[i]=0; } for(j=1;j<=n;j++){ if(sushu(j)==2){ k=1; yinzi[0]=1; } else if(sushu(j)==1){ k=2; yinzi[0]=1; yinzi[1]=j; } else if(sushu(j)==0){//n不是素数的情况下才可以分解 k=0,i=2,j_t=j; while(j_t!=1){ if(j_t%i==0){ yinzi[k]=i; j_t=j_t/i; k++; i=2; continue; } i++; } } for(i=0;i<k;i++){ if(m==yinzi[i]) b++; } } printf("%d\n",b); }return 0;}
阅读全文
0 0
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- 阶乘因式分解(一)
- Java设置web项目访问到action
- oracle 查询技巧、常用函数汇总(不断更新中。。)
- qt creator中使用qwt插件
- vmware下安装centos7(转载)
- Linux内核驱动之DDR3(一)寻址
- 阶乘因式分解(一)
- 状压DP自学笔记
- 前端之必备软件
- 《Effective C++》条款07总结
- mysqldumpslow 分析mysql慢查询
- 期望极大算法:Expectation Maximization Algorithm
- C++ 多态,虚函数
- Java常见集合框架(二十二): Map之Dictionary、Hashtable
- iOS 获取通讯录的4种方式详解