码迷,mamicode.com
首页 >  
搜索关键字:nyoj 336 子序列    ( 6902个结果
nyoj 单词拼接(并查集判断连通性+欧拉路径)
这题还是比较难的。 首先建图方面,如果单纯的把单词作为点,能拼接的关系作为边,那么就是哈密顿图(每个点仅能走一次),难度比较大。 换一种思路,就是把每个单词看成一条有向边,由该单词的首字母指向尾字母。 那么这题便是欧拉图的问题了。...
分类:其他好文   时间:2014-08-27 22:01:38    阅读次数:357
8月26———动态规划lcs
解决最长公共子序列问题:求解的方法如图所示:例如,设所给的两个序列为X=和Y=。由算法LCS_LENGTH和LCS计算出的结果如下图所示:其模板可以写成void lcss(){ int i,j; int sizex=str1.length(); int sizey=str2.len...
分类:其他好文   时间:2014-08-27 16:21:27    阅读次数:206
Heap 3214 LIS题解
根据问题转换成最长不降子序列问题。 10^9的输入数据计算起来还是挺花时间的。因为这里只能使用O(nlgn)时间复杂度了。不过证明是可以算出10^9个数据的。因为时间限制是5s. #include #include #include #include #include #include #include #include #include #include #include...
分类:其他好文   时间:2014-08-27 10:56:47    阅读次数:174
nyoj677 谍战
本题可以说是最小割入门级题目。 如果能想到是最小割问题,那么建图思路便是水到渠成的事了。 添加一个源点S和汇点T; 把S与每个间谍相连,容量为无穷大; 把城市N(即飞机场的位置)与汇点T相连,容量为无穷大; 之间有道路的城市相连,容量为1,注意这里是双向的边; 建图完后,根据最大流最小割定理,那么直接求最大流即可。...
分类:其他好文   时间:2014-08-27 10:56:07    阅读次数:298
TYVJ1254
最长不降子序列,O(n^2)算法能超时超到明年需要o(nlogn)算法(CMI)这个问题利用到了辅助数组d[i],这里姑且称它为栈,因为对该数组的操作像是栈的操作,d[i]表示长度为i的不降子序列中最小的最后元素,最后栈的长度就是最长不降子序列的长度当循环到a[i]的时候和栈顶元素s比较,如果sa[...
分类:其他好文   时间:2014-08-26 21:07:46    阅读次数:186
(转载)偏序集的Dilworth定理学习
导弹拦截是一个经典问题:求一个序列的最长不上升子序列,以及求能最少划分成几组不上升子序列。第一问是经典动态规划,第二问直接的方法是最小路径覆盖, 但是二分图匹配的复杂度较高,我们可以将其转化成求最长上升子序列,其最大值即等于不上升子序列的最小划分数。这就涉及到组合数学中偏序集的 Dilworth定理...
分类:其他好文   时间:2014-08-26 19:31:46    阅读次数:273
10D-最长上升公共子序列
#include #include #include using namespace std;int a[505], b[505];int dp[505], path[505];int Susake_lcs[505][505], Susake_lcis[505][505];void Susake_L...
分类:其他好文   时间:2014-08-26 13:20:36    阅读次数:208
6E-差值不超过k的子段个数
给n个数,然后找出最长的一段子序列(不需要连续),使得这段子序列中的最大值与最小值之间的差值不超过k.找出有几个子序列满足,并输出他们的开始位置和结束位置#include #include using namespace std;int n,k,a[100005];int Max[100005],M...
分类:其他好文   时间:2014-08-26 13:18:46    阅读次数:211
NYOJ 1023 还是回文(DP,花最少费用形成回文串)
1 /* 2 题意:给出一串字符(全部是小写字母),添加或删除一个字符,都会产生一定的花费。 3 那么,将字符串变成回文串的最小花费是多少呢? 4 5 思路:如果一个字符串增加一个字符 x可以形成一个回文串,那么从这个字符串中删除这个字符 x 6 同样...
分类:其他好文   时间:2014-08-26 00:11:35    阅读次数:261
4D-最长上升子序列
给你N信封和1张卡片,让你从左到右选择信封(要求是右信封比左信封大)且最左边的信封要能装进卡片#include #include #include using namespace std;struct Node{ int si, sj; unsigned short n;};Node S...
分类:其他好文   时间:2014-08-25 20:50:04    阅读次数:186
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!