Description您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:1.查询k在区间内的排名2.查询区间内排名为k的值3.修改某一位值上的数值4.查询k在区间内的前驱(前驱定义为小于x,且最大的数)5.查询k在区间内的后继(后继定义为大于x,且最小的数)Input...
分类:
其他好文 时间:
2014-12-11 11:58:42
阅读次数:
325
题意:给你n条线段,求被最多的线段覆盖的点被覆盖的次数解法:我们可以将一条线段[xi,yi]分为两个端点xi和(yi)+1,在xi时该点会新加入一条线段,同样的,在(yi)+1时该点会减少一条线段,因此对于2n个端点进行排序,令xi为价值1,yi为价值-1,问题转化成了最大区间和,因为1一定在-1之...
分类:
其他好文 时间:
2014-12-10 21:02:56
阅读次数:
201
题目大意:求[l,r]区间内有多少个数是只由6和8组成的数的倍数
同2393 链接:http://blog.csdn.net/popoqqq/article/details/41807333
此题数据强力了一些 由于r
于是我们可以用double求出LCM的近似值与r进行比较 如果小于r再取精确值进行计算
此外就是搜索的时候要从大到小搜 从小到大会TLE
#include
#inclu...
分类:
其他好文 时间:
2014-12-10 16:30:47
阅读次数:
179
先用莫队算法保证在询问之间转移的复杂度,每次转移都需要进行O(sqrt(m))次插入和删除,权值分块的插入/删除是O(1)的。然后询问的时候用权值分块查询区间k小值,每次是O(sqrt(n))的。所以总共的复杂度是O(m*(sqrt(n)+sqrt(m)))的。常数极小。别的按权值维护的数据结构无法...
分类:
编程语言 时间:
2014-12-10 14:03:21
阅读次数:
459
题目意思:
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1094
一整数数列a1, a2, ... , an(有正有负),以及另一个整数k,求一个区间[i, j],(1
Input
第1行:2个数N,K。N为数列的长度。K为需要求的和。(2 <= N <= 10000,-10^9 <= K <= 10^9...
分类:
其他好文 时间:
2014-12-09 15:40:07
阅读次数:
193
Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessary).
You may assume that the intervals were initially sorted according to their start times.
Examp...
分类:
其他好文 时间:
2014-12-09 09:25:14
阅读次数:
190
(1) CountSemiprimes半质数的定义是恰好两个质数(可以相同)乘积的数,例如 4, 6, 9, 10, 14, 15, 21, 22, 25, 26,都是半质数。给定N,长度为M的等长整数数组P和Q,满足1 ≤ P[K] ≤ Q[K] ≤ N, 求每个区间[P[k], Q[k]]之间有多少个半质数。函数头部:vector solution(int N, vector &P, vect...
分类:
其他好文 时间:
2014-12-09 07:06:43
阅读次数:
269
题目链接:https://www.hackerrank.com/challenges/almost-sorted-interval题目大意:定义一个“几乎单调”区间(区间最小值在最左面,最大值在最右面)给一个N的排列,求“几乎单调”区间的个数N=100W 解法为O(n)很好的思维题!想了一下午,其实...
分类:
其他好文 时间:
2014-12-08 22:38:09
阅读次数:
183
这道题当时没有做出来,状态不会保存。原来可已用二进制保存状态,做的题太少,暴漏的问题太多了;这么简单的东西,,,,,也不会保存
这道题就是每一次维护区间的和,也就是把它的30种颜色用二进制保存下来。也就1
#include
#include
#include
using nam...
分类:
其他好文 时间:
2014-12-08 21:26:03
阅读次数:
201
1、计数排序如果给定上下界,并且区间不大的话,最适用。比如对于英文字母数组进行排序。时间复杂度O(n),空间复杂度O(n)void countSort(int A[], int n, int low, int high){ int size = high-low+1; vector co...
分类:
编程语言 时间:
2014-12-08 21:13:50
阅读次数:
225