平面最近点对,是指给出平面上的n个点,寻找点对间的最小距离 首先可以对按照x为第一关键字排序,然后每次按照x进行分治,左边求出一个最短距离d1,右边也求出一个最短距离d2,那么取d=min(d1, d2) 然后只需考虑横跨左右两侧的点,不妨枚举左侧的点pi 那么很显然的是如果pi距离中间的点超过了d ...
分类:
其他好文 时间:
2016-11-30 23:14:11
阅读次数:
202
【题目链接】 http://acm.hdu.edu.cn/showproblem.php?pid=5700 【题目大意】 给出一个长度为n的数列和m个区间,现在求k个区间,使得他们的区间交内的数列项和最大。 【题解】 将区间按照右端点为第一关键字排序, 那么在从后往前扫描的过程中,已经扫过的部分右端 ...
分类:
其他好文 时间:
2016-11-20 16:11:52
阅读次数:
151
Kostya the Sculptor 题目链接:http://codeforces.com/problemset/problem/733/D 贪心 以次小边为第一关键字,最大边为第二关键字,最小边为第三关键字排序,每次只需要找次小边和最大边均相同,最小边最大的两项即可。 因为用Python遇到很多 ...
分类:
其他好文 时间:
2016-11-13 22:00:27
阅读次数:
195
/* 对于题目多读几遍,然后再关键字排序的时候,把对应的数组序号也排序, EYDE MBLR THAN MEKT ETOE EOTH MEETME BYTHEO LDOAKT REENTH */ #include<iostream>#include<string>#include<algorithm ...
分类:
其他好文 时间:
2016-11-03 02:06:14
阅读次数:
251
算法描述 多关键字排序: 又比如123,主位是1,次卫是3。 123,46,791。 按照次位优先 次位:791,123,46 次次位:123,46,791 次次次位:46,123,791 具体实现 建立桶元素结点,用链表实现。 建立桶头尾结点结构体。 构造GetDigit ( int X, int ...
分类:
编程语言 时间:
2016-09-13 13:42:19
阅读次数:
599
枚举,排序。 先将所有点按双关键字排序,然后枚举线的顶点$P$,剩余的点以$P$为中心进行极角排序,可以取个$gcd$,这样一样的点就排在一起了,然后统计一下更新答案。 ...
分类:
其他好文 时间:
2016-09-01 23:04:12
阅读次数:
241
http://poj.org/problem?id=3241 曼哈顿距离最小生成树模板题。 核心思想是把坐标系转3次,以及以横坐标为第一关键字,纵坐标为第二关键字排序后,从后往前扫。扫完一个点就把它插到树状数组的x-y位置上,权值为x+y。查询时查询扫过的所有点满足xdone-ydone>=xnow ...
分类:
其他好文 时间:
2016-08-22 21:27:27
阅读次数:
186
1、流行的商业级关系数据库: 2 表类型: 3 排序: (1)根据关键字排序(asc和desc,升序和降序) (2)根据表达式排序:如根据电话后三位排序 order by right(tel,3) (3)根据数字占位符排序:如:根据查询返回的第2列和第5列排序: ...
分类:
数据库 时间:
2016-08-16 20:07:43
阅读次数:
354
题目大意: 给定n个数及其优先级,求对应的符合最小堆性质的Treap的先序遍历。 n<=500000。 解法: 目前为止我只想到了三种解法,其中第三种是正解。 1.暴力1 以优先级为关键字排序,然后按顺序构建BST即可。注意不能加平衡,因为这样会改变树的先序遍历。 期望复杂度O(nlogn)(排序和 ...
分类:
其他好文 时间:
2016-08-07 21:31:24
阅读次数:
173
时限卡的好紧,G++ 3400ms过的,C++超时了。 双关键字排序,然后从左一个一个点看过去,假设第i个点必选,然后对i之后的点按照i这个点为原点进行极角排序,极角相同的排在一起(可以除gcd之后排序),然后统计一下即可。重点需要注意一下。 ...
分类:
其他好文 时间:
2016-07-23 11:53:42
阅读次数:
170