找回密码
 欢迎注册
楼主: litaoye

[求助] 关于一个运算优化的问题

[复制链接]
发表于 2009-3-13 01:20:07 | 显示全部楼层
我快绝望了,代码改了一次,速度依然没有提高。虽然通过了,但仍然低于我的期望。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-3-13 01:26:14 | 显示全部楼层
原帖由 liangbch 于 2009-3-13 01:00 发表
终于通过了,不过从999-9999的运行结果和你的不一样,不知到谁错了。
最新成果0.343秒。数组的初始化过程可以消去,速度应该还能提高。


看到了,成绩很不错了!我这里还有几个地方,需要细致的优化一下!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 01:29:16 | 显示全部楼层
我发现中国人很厉害呀,这个问题的前10名中有6个是中国人,我的成绩是第42名。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-3-13 01:38:26 | 显示全部楼层

回复 53# liangbch 的帖子

可不是么,这类ACM网站别管多偏僻,前十里面都有中国的,呵呵!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 08:13:52 | 显示全部楼层
如果是按照他网站的编译说明

也许使用大量汇编能达到0.1的水平
只要掌握好消除跳转指令
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 08:17:00 | 显示全部楼层
第一是
时间 0.062s
内存 133kB
语言 Pascal

而且是2005年提交的
那么
存在非汇编形式的快速算法
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 08:21:15 | 显示全部楼层
能不能用十进制表示??????

就是XOR不好算
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 09:30:28 | 显示全部楼层
这个题目的关键是求128bit数的log10,我打算完全用汇编语言写这个函数,原型见下。 预计进入前20不成问题。

int log10(UINT128 *n);
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 09:52:16 | 显示全部楼层
我的一朋友问我一个问题,A+B 怎么回事?见http://acm.timus.ru/problem.aspx?space=1&num=1000
楼主应该是做过A+B的,这个问题中,既没有给出两个数的类型(整数,浮点数),有没有给出数的范围,你能告诉做这个题的一些注意事项吗?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-3-13 10:04:40 | 显示全部楼层
宝宝,
   用跳转表写
   应该能消除大部分跳转指令
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-25 13:02 , Processed in 0.045506 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表