| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5209 人关注过本帖
标题:最大质数因子问题
只看楼主 加入收藏
tompobing
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:260
专家分:809
注 册:2012-12-9
结帖率:78.13%
收藏
已结贴  问题点数:20 回复次数:11 
最大质数因子问题
13195的质数因子有5,7,13和29.
 
600851475143的最大质数因子是多少?


求高效思路,最好有代码
搜索更多相关主题的帖子: 因子 最好 
2013-03-25 21:48
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:3 
600851475143  这个数有点大...

三十年河东,三十年河西,莫欺少年穷!
2013-03-25 22:23
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
我的这个代码只能求小范围的数的最大质因子...   
程序代码:
#include<stdio.h>
main()
{
    int i=2,k;
    printf("请输入一个数:");
    scanf("%d",&k);
    while(k!=1) 
    {
        while(k%i==0 )
        {
            if(k/i==1)
                printf("最大质因子为:%d\n",i);
            k=k/i;
        }
        i++;
    }
    return 0;
}


三十年河东,三十年河西,莫欺少年穷!
2013-03-25 22:24
shmilyflf
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:356
专家分:1008
注 册:2012-12-9
收藏
得分:3 
又是大数处理问题吗,据以前问题的回答是用数组模拟大数。具体没用过
2013-03-25 22:28
qunxingw
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:24
帖 子:1676
专家分:7295
注 册:2011-6-30
收藏
得分:3 
5753023

www.qunxingw.wang
2013-03-26 09:09
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:3 
用 __int64完全装的下,先取600851475143的平方根 s1 = 775146,再取 s1的平方根 s2 = 880,用数组存储所有不小于 s2的质数,把 s1递减

同时满足 被600..143整除 和 不被数组中任一质数整除的,就是结果了。应该是 6857

楼上的不是质数,5753023 = 6857 * 839

代码不复制了,不难,自己写写


[fly]存在即是合理[/fly]
2013-03-26 10:52
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
貌似把 s2递增更快些


这个说法不对,需要把是s1 - s2全部判断,递减更快,一不小心就二了,额

[ 本帖最后由 azzbcc 于 2013-3-26 11:12 编辑 ]


[fly]存在即是合理[/fly]
2013-03-26 11:04
qunxingw
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:24
帖 子:1676
专家分:7295
注 册:2011-6-30
收藏
得分:0 
呵,我用exce1分解不彻底啊

www.qunxingw.wang
2013-03-26 11:07
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:3 
学习点,

Maybe
2013-03-26 11:25
czz5242199
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:660
专家分:2400
注 册:2011-10-26
收藏
得分:3 
引理:一个数n至多有一个大于sqrt(n)的质因子

所以把n从2到sqrt(n)全部全部试除一次,剩下一个数如果不等于1,那么他就是最大的质因子

如果为1的话,则试除过程中最后一个除过的数就是最大质因子
2013-03-26 12:12
快速回复:最大质数因子问题
数据加载中...
 
   



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

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