uva12589】的更多相关文章

题目大意:给n(n<=50)个向量(xi,yi) (0<=xi<=yi<=50),选出其中k(1<=k<=n)个,从(0,0)点开始,依次首尾相连,求此k个向量与x正半轴围成的最大面积的两倍并输出. 初步想法,向量都在第一象限,所以最优解一定是选中k个排成上凸曲线.故第一步是按照向量斜率排序! 然后就是迭代dp了. 先看看暴力方程dp[i][j][y]=max(dp[i][j][y],dp[o][j-1][y-li[i].y]+f(li[i].x,li[i].y,y))…