题目大意:给定一个序列,可以多次将某个位置的数删掉并将后面所有数向左串一位,要求操作后a[i]=i的数最多
首先我们假设最后a[i]=i的数的序列为S
那么S满足随着i递增,a[i]递增(相对位置不变),i-a[i]单调不减(后面的不会比前面移动的少)
这是一个三维偏序问题
要是不看题解我就真去写CDQ分治了233
我们发现i=(i-a[i])+a[i]
也就是说如果一个序列满足i-a...
分类:
其他好文 时间:
2015-03-12 17:21:57
阅读次数:
124
题目大意:给定一个序列,可以选择k次区间并将区间内每个数都+1,求操作之后LIS的最大值
我的做法不是标解。。。5E的复杂度为何跑的飞起。。。
首先一个显而易见的结论就是我们选择的k次区间右端点都是n时才能保证最优
知道这个我们就可以DP了- -
令f[i][j]表示前i个数上升j次的最大LIS
那么有f[i][j]=max{f[k][l]|k
看到三维偏序就可以用二维树状数组了- -...
分类:
编程语言 时间:
2015-03-12 17:12:16
阅读次数:
1099
Sort a linked list using insertion sort. 解题思路: 新建一个头结点 将链表有序的插入这个新链表 代码: /** * Definition for singly-linked list. * struct ListNode { * int val; * Lis...
分类:
其他好文 时间:
2015-03-12 14:46:30
阅读次数:
155
项目碰到一个需要根据listview上下滚动显示/隐藏tab的问题,挺常见的一个需求,想网上copy一个代码直接用缺发现大部分的实现都不准确。比如用OnScrollListener里的第一个可见项的index来判断,如果item比较大,滚动了半天还没滚出这个item呢?所以干脆自己写了一个,给lis...
分类:
其他好文 时间:
2015-03-12 11:28:08
阅读次数:
1198
题目链接:https://leetcode.com/problems/merge-two-sorted-lists/
题目:Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first
two ...
分类:
其他好文 时间:
2015-03-09 11:05:29
阅读次数:
134
VJ链接:点击打开链接
基础DP做好了更有益~!
从中得出几个结论:
1. 背包问题所选的物品是没有相关性,是填充性质
2. LIS问题是元素之间有某种关系(多个属性则先排序某个,在依据另一个LIS)
3. TSP组合问题,一般进行状压,求元素的某种序
题目:
1. 最大M子段和
这个很像多维背包问题,有个数限制。同时我们可以发现最后这个元素只能是 i个子段中最后一个子段...
分类:
其他好文 时间:
2015-03-09 10:54:09
阅读次数:
143
Given a non-empty tree with root R, and with weight Wiassigned to each tree node Ti. Theweight of a path from R to Lis defined to be the sum of the we...
分类:
其他好文 时间:
2015-03-08 11:38:19
阅读次数:
217
web.xml加载顺序 应用服务器启动时web.xml加载过程,至于这些节点在xml文件中的前后顺序没 有关系,不过有些应用服务器,我曾碰到过的 websphere就严格要求web.xml的节点顺序,否则部署不成功,所以还是赞成按照web.xml标准格式写 content-param --> lis...
分类:
Web程序 时间:
2015-03-08 00:02:12
阅读次数:
263
简述:
LIS问题,即最长上升子序列问题,经典的解法有序列DP,通过这个算法,可以获得最长上升子序列的各种详细信息。但是,我们有时候只需要求最长上升子序列的长度,但是o(n^2)的时间复杂度太慢了,我们希望有一种算法,可以更快一点。算法过程
既然动态规划太慢了,那么自然就想到了贪心。下述算法,就是运用了二分+贪心
首先考虑一个序列a:1、3、2、7、5、6、4 (一共7个数),另外一个辅助数组...
分类:
其他好文 时间:
2015-03-07 22:51:54
阅读次数:
454
题目大意:Wavio序列是关于整数的序列,有这样的性质:
1.长度为奇数,L=2*n+1
2.前n+1项严格递增
3.后n+1项严格递减
4.相邻的两个数不相等
给出n个数的序列,求出其中最长的Wavio子序列的长度。
依次对每个元素求以它为结束的最长上升子序列和以它为开始的最长下降子序列,b[i]为以i为最后一个元素的最长上升子序列,c[i]为以i为第一个元素的最长下降子序列...
分类:
其他好文 时间:
2015-03-06 01:03:40
阅读次数:
222