2014年11月15日

摘要: 这道题目需要用二分查找,否则可能超时,时间复杂度应嘎是n.lgn。可以通过。二分查找末班int find(l,r){ int mid=(l+r)/2; if(data[mid]==num) return mid; else if ... return find(l,mid-1) //注意... 阅读全文
posted @ 2014-11-15 20:53 Champion Lai 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 这道题目开始时以每次查询都去遍历一遍,往两个方向搜索,会超时,即使减掉一些情况。考虑过用二维数组发现10^5*10^5,编译会报数组太大的错误,这个比较奇怪,在全局变量不是都是在对上分配吗?按理来说可以无限大啊。待考察// 1046.cpp : 定义控制台应用程序的入口点。////用一维数组来记录二... 阅读全文
posted @ 2014-11-15 17:10 Champion Lai 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 这道题木意思是给你一个连续的序列,要求找出其中连续和为给定值的一段序列,如果不存在这样的序列,那么就输出值大于给定值且最接近的这样值的一个序列。题目数据量是10^5,如果用N*2复杂度肯定会超时,所以我采用的是On算法。但是在求和少于给定值的过程中所需的步骤不确定。总体效果还算不错,最大时间是39m... 阅读全文
posted @ 2014-11-15 15:07 Champion Lai 阅读(282) 评论(0) 推荐(0) 编辑

导航