画圆的沙滩

亦简亦美

2011年3月30日 #

买书问题

摘要: 编程之美1.4节。这是一道很有趣的问题。作者试图使用贪心策略去解答,尽管给出了贪心中关键的变化,不过最终并没有给出证明。然后,解法二中使用了动态规划来求解这道题。另外,新版中提到薛笛有更细致一点的分析:http://blog.csdn.net/kabini/archive/2008/04/16/2296943.aspx,其中主要讨论了贪心算法。不过,我感觉仍然不够简明清晰。确实,这道题是可以使用贪心的。关键是如何应用贪心策略,从而保证可以到达最优解。下面给出我的理解。首先,类似于作者的思路,可以试图分解较小的数找到最佳的分解组合。不过,这里作者和薛笛关注的方向不恰当。事实上,对于任意的组合数, 阅读全文

posted @ 2011-03-30 12:15 acmaru 阅读(169) 评论(1) 推荐(0) 编辑

最近点对问题

摘要: 编程之美2.11节。也可参考:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=113&page=show_problem&problem=1186对于扩展问题2,可以先找到这些点的凸包(O(nlogn)),然后对凸包点求最大距离。对于凸包点,可以考虑按长轴平分四份,然后在最外侧的两份之间寻找最大点对。因为居内侧的两份中的最大距离无法超过长轴。当然,可以分割得更精细一点。这只是计算上复杂性的小差别了。struct Point { double x, y;}; 阅读全文

posted @ 2011-03-30 09:28 acmaru 阅读(310) 评论(0) 推荐(0) 编辑

导航