| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1919 人关注过本帖
标题:求助一道算法题目
只看楼主 加入收藏
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
fflush(stdin);
没什么用,把缓冲的数据送到内存
2008-01-18 13:28
XMAM
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-1-18
收藏
得分:0 
老大,你也不小了好不
2008-01-18 23:20
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
楼上的怎么了??????呵呵,学习没有止境啊,程序我写的要负责解说到位啊....
2008-01-18 23:37
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
我也写了一个。

int defact(int x)
{
    int a = 2;
   
    if(x < 0)
    {
        x *= -1;
        printf("-1");
    }
    else if(x <= 1)
        printf("1");
   
    while(x > 1)
    {
        if(x % a == 0)
        {
            printf(" * %d", a);
            x /= a;
            a = 2;
        }
        else
            ++a;
    }
    putchar('\n');
}

[[italic] 本帖最后由 cosdos 于 2008-1-19 00:45 编辑 [/italic]]

—>〉Sun〈<—
2008-01-19 00:44
ONLYLEMON
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-1-20
收藏
得分:0 
用欧几里德算法,辗转相除
2008-01-20 09:43
闪闪4521
Rank: 1
等 级:新手上路
帖 子:196
专家分:0
注 册:2007-11-30
收藏
得分:0 
我想了想可以把时间复杂度降下来;
j从2开始小于key的平方根且小于key除以已找到的因子之后的数,
找 J 时从2开始,以后的偶数都跳过,
当找到一个因子时不必再从2开始重新找,
将这个因子继续判断是否还是他的质因子如果不是了就继续加,
2008-01-20 20:47
skyergg
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-1-20
收藏
得分:0 
main()
{
int m,j=2;

scanf("%d",&m);

printf("\n%d=",m);
while(m!=1) {
  if(m%j == 0) {printf("%d*",j);m/=j;}

  else {j++;  }
  if(j>m)break;
}
getch();
}
2008-01-20 20:52
闪闪4521
Rank: 1
等 级:新手上路
帖 子:196
专家分:0
注 册:2007-11-30
收藏
得分:0 
skyergg?
sky gg?
sky很强的
2008-01-20 21:09
快速回复:求助一道算法题目
数据加载中...
 
   



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

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