| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1049 人关注过本帖
标题:算法大牛,这么样降低此程序的exe.time
只看楼主 加入收藏
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
不用数学结果求解,循环累加计算的话,10亿级数求和耗时在3秒左右,但结果却是错的。直接用long类型计算,也一样是错的。

授人以渔,不授人以鱼。
2011-08-18 17:19
voidx
Rank: 12Rank: 12Rank: 12
来 自:邯郸
等 级:火箭侠
帖 子:1250
专家分:3538
注 册:2011-4-7
收藏
得分:0 
回复 20楼 风生钧起
编译代码是机器干的
2011-08-18 17:21
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
关键问题是10亿自数的级数和超越了unsigned long数据类型的容量,而64位的long long类型不是任何编译器都支持的(我在VS2010 C++中就不支持)。因此,本题在普遍情形下,必须使用double数据类型来运算。

授人以渔,不授人以鱼。
2011-08-18 21:28
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
10亿 你可以看看结果  10亿*(1+10亿)数据肯定溢出

楼主写大数运算吧 按照公式应该是大数乘大数

                                         
===========深入<----------------->浅出============
2011-08-20 08:47
liliangjun
Rank: 1
等 级:新手上路
帖 子:6
专家分:3
注 册:2011-8-21
收藏
得分:0 
.....
2011-08-21 14:05
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
要看n的规模,
图片附件: 游客没有浏览图片的权限,请 登录注册

免费赠送河蟹一只
2011-08-21 15:14
快速回复:算法大牛,这么样降低此程序的exe.time
数据加载中...
 
   



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

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