摘要:
http://poj.org/problem?id=2533该题是最裸的LIS题,这里有两种方法。代码如下:#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int a[10000], dp[10004];int main(){ int N; while (scanf("%d", &N) == 1) { int ans = 1, m; for (int i = 0; i < N; ++i) { scanf("%d&q 阅读全文
posted @ 2012-03-03 16:25
沐阳
阅读(300)
评论(0)
推荐(0)
摘要:
http://acm.hdu.edu.cn/showproblem.php?pid=3016这题是一个游戏题,名曰:是男人就下一百层。就是给定一系列的坐标,首先是纵坐标,然后是线段的左右坐标,最后是在该条线段的增加或者扣除的血量。解决这题的关键在于如何处理这多条线段的关系,如果是从上而下的话,那么我们能够更新一条边的两个端点下的最优值,那么对于后面加入的边就有下面的动态方程: sum[f] = max( sum(x), f.x1 <= x <= f.x2 ) + val(f) 需要在该边的区域内寻找最大值来更新这条边的两个端点值,这样做显然处理起来较麻烦,时间开销也比较大。所以我们 阅读全文
posted @ 2012-03-03 09:55
沐阳
阅读(364)
评论(0)
推荐(0)


浙公网安备 33010602011771号