本文主要是介绍交大机试(分解质因数),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目 http://ac.jobdu.com/problem.php?pid=1104
#include<stdio.h>
int min(int a,int b){if(a<b)return a;return b;
}
int prime(int k,int n){int sum=0,ii;for(int i=k;i<=n;i++){ii=i;while(ii%k==0){sum++;ii/=k;}}return sum;
}
int main(){int n,a;while(~scanf("%d%d",&n,&a)){int i=2,sum=0,mm=1000,aa=a;while(a>=1&&i<=aa){if(a%i==0){sum++;a/=i;}else{if(sum!=0){//cout<<i<<" "<<sum<<" "<<prime(i,n)<<endl;mm=min(mm,prime(i,n)/sum);}sum=0;i++;}}printf("%d\n",mm);}return 0;
}
/**************************************************************Problem: 1104Language: CResult: AcceptedTime:10 msMemory:912 kb
****************************************************************/
这篇关于交大机试(分解质因数)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!