1、快速排序
通过选择轴值,一次划分都能确定该轴值得位置,其时间复杂度最好的情况(每次划分都恰好将区间平分为等长的两半)下为Ο(nlgn),最差情况(每次划分将区间分成0与n-1)为O(n^2)。其空间复杂度考虑递归的栈深为O(lgn)。
1 /********************...
分类:
其他好文 时间:
2014-05-16 19:24:46
阅读次数:
361
二分查找又称折半查找,它是一种效率较高的查找方法。折半查找的算法思想是将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分。通过一次比较,将查找区间缩小一半。
折半查找是一种高效...
分类:
编程语言 时间:
2014-05-16 07:10:02
阅读次数:
329
题意:让你染色点,要求在给出的区间内|红色个数-蓝色个数|
思路:排序后依次交替染色就能达到效果
#include
#include
#include
#include
#include
using namespace std;
const int MAXN = 110;
int arr[MAXN];
int n,m,x,y;
int main(){
scanf("%d%d",...
分类:
其他好文 时间:
2014-05-15 02:53:54
阅读次数:
205
题意:题中平衡数的定义: 以一个位置作为平衡轴,然后左右其他数字本身大小作为重量,到平衡轴的距离作为全职,实现左右平衡(即杠杆原理平衡)。然后为区间[x,y]内平衡数的个数。 (0 ≤ x ≤ y ≤ 1018)
解法:数位dp。如果一个数的平衡数,那么它的平衡轴位置是确定的。原来一直尝试数位dp在dfs时候列举平衡轴的位置,后来才意识到可以提前枚举平衡轴位置,然后再dfs,这样比较好写...
分类:
其他好文 时间:
2014-05-15 02:43:39
阅读次数:
288
OJ题目:click here~~
题目分析:n个[a b] 区间,对于i 属于[a b] ,从a开始,间隔c ,即i = a , i = a + c , i = a + 2*c …… 将x[ i ] 加1 ,x[ i ] 初值为0 。
已知最多只有一个x[ i ] 为奇数。找到这个i , 和这个奇数。
由于最多只有一个奇数,且奇数 + 偶数 = 奇数。用二分夹逼出这个奇数的位置。找到...
分类:
其他好文 时间:
2014-05-14 21:27:36
阅读次数:
176
题目连接:http://poj.org/problem?id=1436
题意:给一些线段,每个线段有三个值y1, y2, x代表起点为(x, y1),终点为(x, y2)的线段。当从一个线段可以作水平线到另一个线段并且不穿过其他线段时,就称这两个线段时水平可见的。当三个线段可以两两水平可见,就称为形成一个线段三角。问:在这些线段中有多少个这样的线段三角?
分析:可以把每条线段看做是一个点,如果...
分类:
其他好文 时间:
2014-05-14 15:27:25
阅读次数:
282
1 /** 2 大意: 给定区间(a,b), 将其转化为二进制
计算从a+(a+1)+(a+2)。。。。+(a+b-1),一共有多少次进位 3 思路: 将(a,b)区间内的数,转化为二进制后,看其每一位一共有多少个1 4
可知最低位循环为2,第二位循环为4 5 ...
分类:
其他好文 时间:
2014-05-13 20:31:13
阅读次数:
255
题意:给你 n 个数,m个询问(c,x,y)
c==0 把x,y区间的值变为原来的平方根(向下取整)
c==1 计算x,y区间的和。
利用1的开方永远为1剪枝。。
#include
#include
#include
#include
//#include
#include
#include
#include
#include
#include
#include...
分类:
其他好文 时间:
2014-05-13 15:50:04
阅读次数:
338
A:A. Points and Segments (easy)
题目看了n久,开始觉得尼玛这是div2的题目么,题目还标明了easy。。
意思是给你一n个点,m个区间,在n个点上放蓝球或者红球,然后让你找一种选择方案使得m个区间内的蓝球和红球数量之差不超过1.
开始想过用dfs,不过这只是div2的A题而已。。
然后想了下,直接输出010101序列不就可以么。
交了一发,发现...
分类:
其他好文 时间:
2014-05-13 15:42:51
阅读次数:
296
大意:给出数组a,内容为 a1 a2 a3 ... an。再给一个常数k。从i=1起,计算ai、a i+1、...、a i+k-1区间内的最小值和最大值。
线段树咯。...
分类:
其他好文 时间:
2014-05-13 14:11:41
阅读次数:
187