摘要: 长春网赛倒数第2题题意:给一颗带权树,树的边权代表通过所需的费用,树中每个节点有一个value,代表财富值,从结点1出发,求在时间T内到达结点n最多能带走的财富。分析:从1到n有一条必经之路,对这条路上的结点用树形DP求泛型背包,然后对这些点进行分组背包。View Code #include <stdio.h>#include <string.h>#include <queue>using namespace std;#define MAX(a,b) ((a)>(b)?(a):(b))#define N 101int n,T,e;int first[N 阅读全文
posted @ 2012-09-10 17:32 BeatLJ 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 亚洲区长春站网络赛第2题题意:Alice和Bob各有n张卡片,如果卡片a的宽和高都不小于卡片b,则a能覆盖b,问Alice的卡片最多能覆盖多少Bob的卡片。每张卡片只能用一次,每张最多只能覆盖一张。分析:在这里卡片之间的关系有3种,1、a能覆盖b;2、b能覆盖a;3、a不能覆盖b,b不也覆盖不了a(a和b相同的情况可以并入前面2种)。我们将双方卡片排序(先比较高,然后比较宽,小的在前)后,若Alice最小的卡片不能覆盖Bob最小的卡片,则Alice这张卡片可以直接抛弃,如果能覆盖,则一定要覆盖一个宽度最大的。我们将Bob的卡片中高度比它小的存入set(关键字为最大宽度-自身宽度),要注意相同卡 阅读全文
posted @ 2012-09-10 17:25 BeatLJ 阅读(264) 评论(0) 推荐(0) 编辑