摘要:
"Magic Door" 题目大意: 给一个字符串,可以将重复的串缩成x(a),表示x个a,求能缩成的最小长度。 题目分析 区间dp: dp[i][j]表示i~j处理后的最小长度, 则有 $$dp[i][j] = min\{dp[i][k] + dp[k + 1][j] (i using names 阅读全文
摘要:
题目描述 求一棵带边权的树的一条最大 Xor 路径的值。这里的“路径”不一定从根到叶子结点,中间一段路径只要满足条件也可以。 输入格式 第一行,一个整数 N ,表示一颗树有 N 个节点,接下来 N 1 行,每行三个整数 a,b,c 表示节点 a 和节点 b 之间有条权值为 c 的边。 输出格式 输出 阅读全文
摘要:
"传送门" 题目分析 题意:给一颗无根树,选择最少的节点将所有的边覆盖。 经典的树型DP,dp[i][0/1]表示选择或不选择i号节点的最优值。 当选择了i号节点,他的子节点可选可不选,选择最优的。 当不选择i号节点,他的子节点必须被选。 最优返回dp[1][0]和dp[1][1]的较小值。 cod 阅读全文
摘要:
"传送门" 中文题面: 题目描述 有一棵苹果树,如果树枝有分叉,一定是分 2 叉(就是说没有只有 1 个儿子的结点,这棵树共有N 个结点(叶子点或者树枝分叉点),编号为1 N,树根编号一定是1。 我们用一根树枝两端连接的结点的编号来描述一根树枝的位置。下面是一颗有 4 个树枝的树: 2 5 \\ / 阅读全文
摘要:
题目描述 学校实行学分制。每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分。学校开设了 N(N using namespace std; const int N = 300; int n, m, dp[N + 5][N + 5], root; struct node{ int fstCh 阅读全文
摘要:
"传送门" 题目分析 拓扑排序:将图从度为0的点不断的剥掉外层的点,即可得到拓扑序,再按照拓扑序进行一遍简单的dp。 code cpp include using namespace std; const int N = 100000, M = 200000, OO = 0x3f3f3f3f; in 阅读全文
摘要:
题目描述 给定一个元素个数为 n 的整数数组 a 和 Q 个问题,每个问题有 x,y 两个参数,请统计共有多少个整数 K 满足 K 在 a[x]…a[y] 中出现了恰好 K 次。 输入格式 第一行两个整数 n,Q,表示数组 a 的元素个数和询问数; 接下来一行 n 给整数,描述数组 a ; 接下来 阅读全文
摘要:
题目描述 给出一张n个点,m条边的无向图,摧毁每条边都需要一定的体力,并且花费的体力值各不相同,给定图中两个点x,y(x≠y),每当(x,y)之间存在路径,就需要不断摧毁当前图中花费体力最少的一条边,直到该路径不联通。他定义cost(x,y)为摧毁(x,y)之间路径花费的体力和。 他想要求出以下这个 阅读全文