从任意一点开始,求一段连续的最长下降子序列,问这段序列最长为多少;分别向下搜索上下左右四个方向,返回最大值 #include #include using namespace std; const int MAXN = 100; const int INF = 0x3ffffff; int mp[M... ...
分类:
其他好文 时间:
2018-02-07 21:13:39
阅读次数:
93
2018.02.02 动态规划练习 1.登山 思路:就是一个同时找最长上升子序列和最长下降子序列的综合题。最后加起来取最大值。不过需要注意的是,不管是上山还是下山,第一个点都是要初始化的,这是边界条件。因为下山没有初始化,调了2h+的教训要记得。 核心代码: 1 #include <stdio.h> ...
分类:
其他好文 时间:
2018-02-03 12:59:57
阅读次数:
248
一看就知道是DP了。 注意要求字典序最小,所以要从后往前做最长下降子序列。 如果不加二分或者树状数组之类的优化应该会TLE的吧。 输出的时候找一下答案即可。 ...
分类:
其他好文 时间:
2017-10-24 20:50:15
阅读次数:
154
题意:对于一个序列,要求去掉正好K个数字,若能使其成为不上升子序列或不下降子序列,则“A is a magic array.”,否则"A is not a magic array.\n"。 分析: 1、求一遍LCS,然后在将序列逆转,求一遍LCS,分别可得最长上升子序列和最长下降子序列的长度tmp1 ...
分类:
其他好文 时间:
2017-09-13 21:22:19
阅读次数:
235
原题链接:https://www.luogu.org/problem/show?pid=1091#sub 应该是一道很经典的动规题了。它分属于线性DP范围。 题意要求我们要让最少的人出列,达到一个先上升再下降的效果,类似于一个波峰。 实际上,只需要找出这个序列上最长上升子序列和最长下降子序列就好。 ...
分类:
其他好文 时间:
2017-09-05 01:34:12
阅读次数:
131
Alignment Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 14486 Accepted: 4695 Description In the army, a platoon is composed by n soldiers ...
分类:
其他好文 时间:
2017-06-10 21:26:47
阅读次数:
195
POJ 1887 Testingthe CATCHER (LIS:最长下降子序列) http://poj.org/problem?id=3903 题意: 给你一个长度为n (n<=200000) 的数字序列, 要你求该序列中的最长(严格)下降子序列的长度. 分析: 读取全部输入, 将原始数组逆向, ...
分类:
其他好文 时间:
2017-06-03 21:47:10
阅读次数:
187
http://www.luogu.org/problem/show?pid=1108 题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则。要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买;再低价购买”。每次你购买一支股票,你必须用低于你上次购买它的价格购买它。买的次数越多 ...
分类:
其他好文 时间:
2016-09-29 09:36:05
阅读次数:
117
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5532 题意:问一个含有n个数的序列,删除一个数后是否有序(递增或递减都可以) 我们只要求一下最长上升子序列或者最长下降子序列是否大于等于n-1即可; 时间复杂度n*log(n); #include<st ...
分类:
其他好文 时间:
2016-09-16 15:25:54
阅读次数:
127