
动态规划 序列型
文章平均质量分 77
_蓦然回首_
我们的团队具有多年Android、IOS、网站、Java开发经验,是一支充满活力,对技术充满激情的团队。
展开
-
NYOJ 44 子串和
题目要求最大连续非空子序列的和方法一:dp[i] 表示判断到第 i 个数所取得的最大连续非空子序列的和,a[i] 表示第 i 个数则 dp[i] = max(a[i], dp[i - 1] + a[i])代码如下: #include#include#includeusing namespace std;const int MAXN = 1000000 + 5;原创 2014-07-18 16:57:43 · 593 阅读 · 0 评论 -
NYOJ 740 “炫舞家“ST
“炫舞家“ST时间限制:3000 ms | 内存限制:65535 KB难度:3描述 ST是一个酷爱炫舞的玩家。TA很喜欢玩QQ炫舞,因此TA也爱屋及乌的喜欢玩跳舞机(Dance Dance Revolution,DDR)。但是TA每天还要努力的学习,因此TA希望每次都保存最多的体力来学习。DDR的主要内容是用脚来踩踏板。踏板有4个方向的箭头,用1,2,3,4来代表,如下图所原创 2014-07-30 19:45:15 · 714 阅读 · 0 评论 -
POJ 2018 Best Cow Fences
Best Cow FencesTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 9840 Accepted: 3177DescriptionFarmer John's farm consists of a long row of N (1 FJ wa原创 2015-05-13 21:18:11 · 604 阅读 · 0 评论 -
UVA 11404 Palindromic Subsequence LCS
点击打开题目链接给一个由小写字母组成的字符串,输出它的最长回文串,如果有多个结果,输出字典序最小的。正序和逆序求最长公共子序列,不过要字典序最小,这里用结构体(第二次用结构体做dp)。dp[ i ][ j ].len 表示 ch1 的前 i 位,ch2的前 j 位,最长公共子串的长度dp[ i ][ j ].str 表示 ch1 的前i位,ch2的前 j 位,最长公共子串的最小原创 2016-05-03 21:19:54 · 416 阅读 · 0 评论 -
UVA 11584 Partitioning by Palindromes 区间dp
点击打开题目链接一个由小写字母组成的字符串,划分成尽量少的回文串。感觉和最长上升子序列差不多,区间dp,方法不对,导致TLE了好久。dp[ R ] = min(dp[ R ], dp[ L - 1 ] + 1)( L #include #include #include #include using namespace std;const int MAXN = 10原创 2016-05-03 19:28:37 · 455 阅读 · 0 评论 -
UVA 531 Compromise
题目链接 UVA 531题意:求两篇文章中单词的最长公共子序列。分析:我们令 dp[ i ][ j ] 表示第一篇文章判断到第 i 个单词,第二篇文章判断到第 j 个单词时的最长公共子序列的长度。状态转移:dp[ i ][ j ] = dp[ i - 1 ][ j - 1 ] + 1;(第 i 个单词和第 j 个相同);或者 dp[ i ][原创 2015-08-11 10:30:19 · 411 阅读 · 0 评论 -
CSU 1510 Happy Robot DP
Happy RobotTime Limit: 1 Sec Memory Limit: 128 MBSubmit: 147 Solved: 68[Submit][Status][Web Board]DescriptionInputThere will be at most 1000 test cases. Each case c原创 2016-05-02 20:44:56 · 444 阅读 · 0 评论 -
HDU 1677 Nested Dolls
贪心 动态规划 STL LIS原创 2015-11-14 20:35:49 · 416 阅读 · 0 评论 -
POJ 2533 Longest Ordered Subsequence
Longest Ordered SubsequenceTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 40236 Accepted: 17700DescriptionA numeric sequence of ai is ordered if a1 a原创 2015-10-16 20:50:52 · 376 阅读 · 0 评论 -
UVa 10534 Wavio Sequence
题目链接 UVa 10534分析:求一个序列的最长先递增再递减的子序列,且递增和递减的长度相同假设长度为 2 * n - 1,前 n 个递增,后 n 个递减,中间共享一个元素LIS 要用 O(nlog2^n) 的做法,不然超时LIS O(nlog2^n)做法代码:#include #include #include #include using name原创 2015-10-16 21:43:51 · 298 阅读 · 0 评论 -
HDU 1003 Max Sum
题目链接 DHU 1003Max Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)原创 2015-08-06 20:14:56 · 364 阅读 · 0 评论 -
UVA 10131 Is Bigger Smarter?
题目链接 UVA 10131题意:给一群大象,求重量递增,智商递减的最多的大象的个数。分析:类似于最长上升子序列,f [ i ] 表示让第 i 个大象做最后一个大象的满足条件的序列长度,则 f [ i ] = max( f [ i ] , f [ j ] + 1 )( 0 关于路径,我们记录最长序列的最后一个大象的编号,然后从他开始递归打印即可。原创 2015-08-05 08:49:52 · 391 阅读 · 0 评论 -
HDU 1159 Common Subsequence
Common SubsequenceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 26150 Accepted Submission(s): 11613Problem DescriptionA sub原创 2015-04-15 17:29:05 · 463 阅读 · 0 评论 -
NYOJ 16 矩形嵌套
矩形嵌套时间限制:3000 ms | 内存限制:65535 KB难度:4描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都可原创 2014-07-30 16:04:49 · 524 阅读 · 0 评论 -
NYOJ 745 蚂蚁的难题(二)
蚂蚁的难题(二)时间限制:1000 ms | 内存限制:65535 KB难度:3描述下雨了,下雨了,蚂蚁搬家了。已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈。小蚂蚁对每种食材都有一个喜爱程度值Vi,当然,如果Vi小于0的时候,表示蚂蚁讨厌这种食材。因为马上就要下雨了,所以蚂蚁只能搬一次,但是能够搬走连续一段的食材。时间紧急,你快帮帮小原创 2014-08-04 19:34:42 · 574 阅读 · 0 评论 -
UVA 10739 String to Palindrome
点击打开题目链接dp[i][j] 表示使序列从下标 i 到下标 j 变成回文所需要的最小操作次数有图有真相:#include #include #include using namespace std;const int maxn = 1000 + 5;char A[maxn];int dp[maxn][maxn];int main(){ int原创 2016-05-18 10:03:17 · 422 阅读 · 0 评论