摘要: 题目出处最后一道附加题,当时搞来搞去的,没有搞好,昨天晚上敲了一下,今天拿来跟狄米特同学比试了一下速度,没想到竟然是我的快了(因为我几乎没有比他快过)。题目描述:求第k大的因数只有3,5和7的数。比如当k=1,2,3的时候答案应该为3,5,7。笔试题就是这个样子,也不说k的密集程度(测试的时候会有多少个k),也不说k的范围,搞得人很纠结但是题上面说了,要求时间复杂度最小。我的分析和解法:我们假设k的范围为1-n。那么对于其中的每一个解,如果时间最优的话,最快可能是O(1),那么对于整个k的范围,可以采用O(n)的方法进行预处理,之后对于每一个k进行O(1)的输出。关键的思想在于对于任意一个满足 阅读全文
posted @ 2013-09-25 16:45 qoshi 阅读(2710) 评论(0) 推荐(0) 编辑