码迷,mamicode.com
首页 >  
搜索关键字:递增    ( 4350个结果
POJ 3670 Eating Together 二分单调队列解法O(nlgn)和O(n)算法
本题就是一题LIS(最长递增子序列)的问题。本题要求求最长递增子序列和最长递减子序列。 dp的解法是O(n*n),这个应该大家都知道,不过本题应该超时了。 因为有O(nlgn)的解法。 但是由于本题的数据特殊性,故此本题可以利用这个特殊性加速到O(n)的解法,其中的底层思想是counting sort分段的思想。就是如果你不会counting sort的话,就很难想出这种优化的算法了。 ...
分类:其他好文   时间:2014-08-09 23:18:49    阅读次数:393
UVA - 10131Is Bigger Smarter?(DAG上的DP)
题目:UVA - 10131Is Bigger Smarter?(DAG) 题目大意:给出一群大象的体重和IQ,要求挑选最多的大象,组成一个序列,严格的体重递增,IQ递减的序列。输出最多的大象数目和这些大象的序列(其中一种就可以)。 解题思路:DAG上的DP。和之前的一篇相似。uva437 - The Tower of Babylon(DAG上的DP)。就是将每两只大象满足上面...
分类:其他好文   时间:2014-08-09 23:16:19    阅读次数:273
HDU 1087 Super Jumping! Jumping! Jumping!(DP)
题意 求n个数字的和最大的递增子序列 基础的dp题目 令d[i]表示以第i个数字结尾的和最大的递增子序列 有d[i]=max(d[i],d[j]+a[i]) j为1到a之间的数 且a[i]>a[j]...
分类:其他好文   时间:2014-08-09 21:34:49    阅读次数:202
hdu4923 Room and Moor
给一个长度为n的A数列,每个数是0或1,要求构造一个递增数列B,长度为n,每个数为[0,1]的实数,使得∑(Ai-Bi)2最小。 可以发现,最前面连续的0和最后面连续的1都没有意义,中间可以看成1和0个数不同的101010串, 对于其中每一个10串,这段B序列取得最佳值是  1的个数/总个数, 每次添加取一段,如果这一段的最佳值小于上一段的取值,那么就把两段合起来更新一个新的最佳...
分类:其他好文   时间:2014-08-09 21:28:19    阅读次数:229
SPOJ DCEPC11I
题目大意:就是给定一段区间令其中的数增加一个递增序列(也就是说第一个+1,第二个+2.。。。。)询问操作是区间的和这里的查询很简单,但是对于添加递增序列入区间就比较搞脑子了我们需要一个add[]作为区间的首个数字增加的值,del[]表示等差数列的公差,因为你每次添加进入一个等差数列,是可以叠加的但公...
分类:其他好文   时间:2014-08-09 18:21:08    阅读次数:279
UVa 11292 - Dragon of Loowater
题目:一条龙有n个头,有m个勇者,勇者的能力值大于龙头的大小就能打败他,每个勇者需要能力值对等的佣金,             问使用至少多少钱可以杀掉龙。 分析:贪心。首先,将龙和勇者斗都递增排序;然后,每次雇佣当前能力值最小的可以杀龙的勇者即可。            (如果当前的勇者导致不适最优解,则他之前有比他佣金高的,则他一定更早被雇佣) 说明:田忌赛马(⊙_⊙)。 #incl...
分类:其他好文   时间:2014-08-09 15:58:58    阅读次数:268
最长递增子序列
1. 动态规划,使用一个数组保存当前的最大递增子序列长度,时间复杂度为O(N^2) # include # include # include using namespace std; int longestsub(int a[],int n) { int *dis=(int *)malloc((n+1)*sizeof(int)); dis[0]=1; int i,j; for(...
分类:其他好文   时间:2014-08-09 13:30:07    阅读次数:221
ROW_NUMBER()函数
--摘录自《T-SQL编程入门经典》 ROW_NUMBER()函数根据作为参数传递给这个函数的 ORDER BY 子句的值,返回一个不断递增的整数值。如果 ROW_NUMBER 的 ORDER BY 的值和结果集中的顺序相匹配,返回值将是递增的,以升序排列。如果 ROW_NUMBER 的 ORDE....
分类:其他好文   时间:2014-08-09 13:25:17    阅读次数:270
Uva 10131 Is Bigger Smarter? (LIS,打印路径)
题意:给定若干大象的体重及智商值,求满足大象体重严格递增,智商严格递减的序列的最大个数, 并打印任意一组取得最大值的序列的大象编号 分析:这个是LIS的应用,只不过判断条件有两个,可以先对大象的体重排序,但是要打印路径, 那就必须得回溯求路径,可以直接逆序循环求,当然递归也是一个好的选择...
分类:其他好文   时间:2014-08-09 11:47:47    阅读次数:195
HDOJ 1142 A Walk Through the Forest 【Dijkstra】+【DFS】
题意:从2到1的所有路径中找出最短的路,并且输出最短路径有几条。 策略:先求出最短路径,然后再找出从2到1的最短路径有几条。最短路径用dijkstra算法来求出,什么是dijkstra算法,简单来说,dijkstra算法就是路径长度递增次序产生最短路径的算法: 基本思想是:把集合V分成两组; (1)S:已求出最短路径的顶点的集合 (2)V-S=T:尚未确定最短路径的顶点集合 将T中顶点按...
分类:其他好文   时间:2014-08-09 11:45:57    阅读次数:275
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!