标题:一道acm的题,提交TE,求大侠讲解一下解题思路(已附上自己思路和代码)
只看楼主
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
得分:0 
哦。虽然就是把所有组合一个个试过来,不过真的是这种递归的写法,想不到。
还一个技巧是用对数运算把幂运算简化为乘法运算,也挺值得学习。
2012-09-01 01:07
zhu224039
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:862
专家分:792
注 册:2012-7-29
得分:0 
  哥哥  我怕了,为了你的问题 我3天没睡好觉了,我还得学习呢

我要成为嘿嘿的黑客,替天行道
2012-09-01 01:11
justNPC
Rank: 5Rank: 5
等 级:职业侠客
帖 子:101
专家分:311
注 册:2012-8-11
得分:0 
回复 32楼 zhu224039
确实挺纠结的
2012-09-01 09:40
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:0 
回复 31楼 pangding
使用对数主要不是为了简化幂运算,而是为了扩大结果的比较范围简化比较方式。

如果直接使用结果的实际值,那么大部分时候64位整型也不足以存储。需要加溢出的判断代码。将其映射为对数后数值在量上大大减小,而单调性是一致的。

最后的结果没有直接用对数值反算,而是重新用整型计算,原因是浮点型的存在舍入误差。

递归搜索中有剪枝的过程,所以速度相当快。
收到的鲜花
  • pangding2012-09-01 12:42 送鲜花  5朵   附言:谢杨大哥指点。

重剑无锋,大巧不工
2012-09-01 12:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-380118-1-1.html




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

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