自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 贪心法/d森林问题

题目 设T为一带权树,树中的每个边的权都为整数。又设S为T的一个顶点的子集,从T中删除S中的所有结点,则得到一个森林,记为T/S。如果T/S中所有树从根到叶子节点的路径长度都不超过d,则称T/S是一个d森林。设计一个算法求T的最小顶点集合S,使T/S为一个d森林。 题解 * d森林 */ #include<bits/stdc++.h> #define MAXN 10000 + 10 using namespace std; int parent[MAXN], leaf[MAXN],

2021-05-13 11:42:07 1627

原创 动态规划

题目 设有一个长度为L的钢条,在钢条上标有n个位置点(p1,p2,…,pn)。现在需要按钢条上标注的位置将钢条切割为n+1段,假定每次切割所需要的代价与所切割的钢条长度成正比。请编写一个算法,能够确定一个切割方案,使切割的总代价最小。 题解 * DP */ #include<bits/stdc++.h> using namespace std; int min (int a, int b) { return a < b ? a : b;; } /** * j-i=1 =

2021-05-13 11:41:18 304

原创 分治与递归

题目 设有n个互不相同的元素x1,x2,…, xn,每个元素xi带有一个权值wi,且∑_(i=1)^n▒w_i =1。若元素xk满足∑_(x_i<x_k)▒w_i ≤□(1/2) 且∑_(x_i>x_k)▒w_i ≤1/2,则称元素xk为x1,x2,…, xn的带权中位数。请编写一个算法,能够在最坏情况下用O(n)时间找出n个元素的带权中位数。 题解 * 带权中位数 */ #include<bits/stdc++.h> using namespace std; //找到中位数

2021-05-13 11:39:22 355

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除