1505专题

hdu 1505 hdu1506 hdu 2830 2870 总结---------DP之状图选最大矩形

/* 多谢了“闭眼,睁眼” 同学给我一套dp专题,不然真是没接触过这种题型。 做个4个简单的,很高兴有所收获。 2013-08-06 /* HDU 1506 最基础的一道题目,其主要精髓就在于两个数组 l[i],r[i]; 其中,l[i]用来存储第i个矩形的左边界,r[i]存储的是第i个矩形的右边界,也就是说对于任意的 l[i]<=x<=r[i]都有a[x]>=a[i]

hdu 1505 dp City Game

嗯。主要就是记录一行比a[i]的高度高的相邻的长度。然后比较面积最大的。 那么,怎么记录。。。 如果,a[i]左边第一个的高度比a[i]高,那么,搜寻比a[i-1]高的、、、依次类推。若果,a[i-1]<a[i],那么a[i]到左边的高度就是它自己。 而当到a[i+1]的时候,如果a[i+1]<a[i],这时候又要求比a[i]高的所有左边相邻的长度,又要重新再算一遍a[i]。。。 同理,右边一样

hdu 1505 2018-2-3

和1506有点像,但需要处理一下 City Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 7745    Accepted Submission(s): 3373 Problem Description

POJ 2955 Brackets POJ 1505 Copying Books POJ 1651 Multiplication Puzzle(初级区间DP)

POJ 2955 Brackets 题目大意 在给定字符串中有多少个可匹配括号,()和[]为可匹配。 解题思路 dp[i][j]代表i~j有多少个可匹配的字符串。 转移方程: 1、dp[i][j]=dp[i+1][j-1]+2,当i,j位置组成可匹配括号; 2、枚举分割点k (i≤k<j) (i \le k<j) :dp[i][j]=max(dp[i][j],dp[i][k]+dp