| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 721 人关注过本帖
标题:质因数分解
取消只看楼主 加入收藏
o670783915
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2015-10-22
结帖率:33.33%
收藏
已结贴  问题点数:20 回复次数:4 
质因数分解
Description
任意一个正整数可以分解成唯一的质因数的乘积,给出正整数,请计算出它的质因数分解式。

输入

每行一个正整数2<=n<=10^8。

输出

每行输出一个对应结果。使用”^”表示幂,”*”表示乘,质因子应该按从小到大的顺序输出,如果某一个质因子只有一次,那么就不要输出它的幂。

 

Sample Input

2

6

36

 

Sample Output

2

2*3

2^2*3^2
 
#include<stdio.h>
#include<math.h>
int main()
 {
  int n,i,j,m,k;
    while ((scanf("%d",&n)!=EOF))
{           k=1;

          for(i=2;i<=sqrt(n);i++)
          {
            j=0;
            if(n%i==0)
            {if(k)k=0;
            else printf("*");
             printf("%ld",i);
            while(n%i==0){
                    j++;n/=i;}
            if(j>1)printf("^%d",j);
            }
          }
            if(n>1)
            if(k)printf("%d",n);
                else printf("*%d",n);
            printf("\n");
}
  return 0;
}

我的是这样的,超时,能指导一下吗?谢谢
搜索更多相关主题的帖子: include 质因数 正整数 
2015-10-22 11:39
o670783915
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2015-10-22
收藏
得分:0 
回复 2楼 azzbcc
我把那个改了就过了,另外我们以前没学,现在才学的,算是从零开始。谢谢大神指点。i*i<=n
2015-10-22 17:16
o670783915
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2015-10-22
收藏
得分:0 
回复 2楼 azzbcc
回复错了,我自醉。
2015-10-22 17:16
o670783915
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2015-10-22
收藏
得分:0 
回复 3楼 rjsp
我把那个改了就过了,另外我们以前没学,现在才学的,算是从零开始。谢谢大神指点。i*i<=n
2015-10-22 17:17
o670783915
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2015-10-22
收藏
得分:0 
回复 2楼 azzbcc
大神我想了想你的算法。是用预处理吧。然后怎么处理了?
2015-10-22 17:18
快速回复:质因数分解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012311 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved