二分 分治
文章平均质量分 82
AndyZhang
一些当前好走的路会越走越窄,而一些当前艰难的路却会越走越宽广。
展开
-
poj3714
题目大意: 求两个集合点中,最近的点对的距离。 算法: 分治,和uva10245差不多,只不过这个多设个标志位, 悲剧:qsort超时,sort就ac。 #include #include #include #include #include using namespace std; struct POINT {原创 2011-10-02 12:28:39 · 4260 阅读 · 0 评论 -
uva-10245-The Closest Pair Problem-分治算法
好长一段时间没做题目了,主要是工作上比较忙,还要陪女朋友,但是算法是自己的一点小爱好,有时间还是要做题目的,就当换换脑子休息一下吧!哈哈! 转入正题: 首先简单介绍一下分治(Divide-and-Conquer )算法: 设计过程分为三个阶段 –Divide: 整个问题划分为多个子问题 –Conquer:求解各子问题(递归调用正设计的算法) –Combine:合并子问题的解, 形成原创 2011-09-15 18:32:34 · 7022 阅读 · 2 评论 -
poj3670
/* * poj3670.cpp * * Created on: 2010-8-18 * Author: friendy *//* 先回顾经典的O(n^2)的动态规划算法: 设 A[i]表示序列中的第i个数,F[i]表示从1到i这一段中以i结尾的最长上升子序列的长度,初始时设F[i] = 0(i = 1, 2, ..., len(A))。 则有动态规划方程:F[i] = max{1, F[j]原创 2010-08-18 20:20:00 · 1238 阅读 · 0 评论 -
2785poj
/* * poj2785.cpp * * Created on: 2010-8-14 * Author: friendy */ #include #include #include #include using namespace std; int a[16000001],b[16000001]; int num[4001][4],cnt,tt原创 2010-08-14 18:24:00 · 1327 阅读 · 0 评论 -
poj2456
久违的二分,快一年没有做过二分题目了……果然手生阿……想想可以二分哪个范围,对题木有帮助 /* * poj2456.cpp * * Created on: 2010-8-12 * Author: friendy */ #include #include #include #include using namespace std; int n,n原创 2010-08-12 12:49:00 · 1789 阅读 · 4 评论 -
poj2728-最小比率生成树/0-1分数规划/二分/迭代
题目意思: 有n个村庄,村庄在不同坐标和海拔,现在要对所有村庄供水,只要两个村庄之间有一条路即可,建造水管距离为坐标之间的欧几里德距离,费用为海拔之差,现在要求方案使得费用与距离的比值最小,很显然,这个题目是要求一棵最优比率生成树。 0-1规划: 概念 有带权图G, 对于图中每条边e[i], 都有benifit[i](收入)和cost[i](花费), 我们要求的是一棵生成树T,原创 2012-11-13 00:34:19 · 4924 阅读 · 0 评论 -
斜率小于0的连线数量-归并排序
题目: 二维平面上N个点之间共有C(n,2)条连线。求这C(n,2)条线中斜率小于0的线的数量。 二维平面上的一个点,根据对应的X Y坐标可以表示为(X,Y)。例如:(2,3) (3,4) (1,5) (4,6),其中(1,5)同(2,3)(3,4)的连线斜率 Input 第1行:1个数N,N为点的数量(0 <= N <= 50000) 第2 - N + 1行:N个点的坐原创 2013-10-31 21:09:36 · 2111 阅读 · 0 评论 -
第K大数-二分原来还可以这样
题目: 数组A和数组B,里面都有n个整数。数组C共有n^2个整数,分别是A[0] * B[0],A[0] * B[1] ......A[1] * B[0],A[1] * B[1]......A[n - 1] * B[n - 1](数组A同数组B的组合)。求数组C中第K大的数。 例如:A:1 2 3,B:2 3 4。A与B组合成的C包括2 3 4 4 6 8 6 9 12共9个数。原创 2013-11-06 22:30:18 · 1654 阅读 · 0 评论