当前位置: 代码迷 >> 综合 >> XJOI 1003 质因数分解
  详细解决方案

XJOI 1003 质因数分解

热度:74   发布时间:2024-01-19 03:03:24.0

求一个正整数n的质因数分解

输入格式:

一个正整数N

输出格式:

对给出的正整数n分解质因数,如给出20,输出2^2*5形式输出。

样例输入:

20

样例输出:

2^2*5

数据范围:

2<=n<=2^31

时间限制:

1S

空间限制:

256M

提示:

对于30%的数据n<=100
对于60%的数据n<=100000
对于100%的数据n<=10^9
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

暴力筛选~


#include<cstdio>int n,ans[10001][2],tot;int main()
{scanf("%d",&n);for(int i=2;i<=n;i++)if(!(n%i)){ans[++tot][0]=i;while(!(n%i)){n/=i;ans[tot][1]++;}}for(int i=1;i<tot;i++){printf("%d",ans[i][0]);if(ans[i][1]>1) printf("^%d",ans[i][1]);printf("*");}printf("%d",ans[tot][0]);if(ans[tot][1]>1) printf("^%d",ans[tot][1]);return 0;
}