自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 并查集判断二分图

每个点设置两个状态,i和n+i,每当存在一条边u,v,便并查集中uni(u,v+n),uni(v,u+n),在这种情况下当出现奇数环时点u和点n+u会出现在同意集合(对于a->b->c->a :a->(b+n)->c->(a+n)).存在奇数环则不为二分图,故找奇数环。

2024-05-23 21:25:02 103 1

原创 Codeforces Round 816 (Div. 2) D. 2+ doors(贪心)

a[i]|a[j]=x,那么x二进制位为0处a[i]和a[j]也为0,制定一数组f[M]表示可选条件,二进制位为0代表当前为只能为0,否则也可为1。那么对每个元素从第一个开始进行贪心,即某一位可选0必选0,即遍历所哟约束条件,确定当前元素可选的最小值,具体可看代码。题意:存在n个元素的数组,给定q个约束,i,j,x,表示a[i]|a[j]=x;求满足条件字典序最小的可能数组。标签有个 2-sat来着,但好像也没用到。

2024-05-09 12:31:45 159

原创 最小割 割点

容量为1代表此点只能删一次,而将其他原有边边权置为INF,随后敲Dinic最大流就行了。(起点,终点,容量)反向边,add(n+i,i,0);

2024-01-02 21:27:22 345 1

原创 最小割 划分 最小边数 洛谷1344

最小割的每一条边地容量的和即是最小割的值,即c1*cnt+1+c2*cnt+1+c3*cnt+1……=ans*cnt+k。)做法:加边时边权设为c*cnt+1.,最小割为ans/cnt,最小边数为ans%cnt。则只需保证cnt>k,即让cnt大于边数m即可。关于最小分割边数,看到一优质题解做法非常好(。利用Dinic()算法求最小割。

2023-12-28 22:07:08 924

原创 最大流 EK() 复习用

【代码】最大流 EK() 复习用。

2023-12-27 16:21:25 487

原创 E. Buy and Delete 迪杰斯特拉(Dijkstra)优化

值得注意的是,堆优化的Dijkstra算法适用于稀疏图,即边的数量相对较小的情况下效果较好。对于稠密图,即边的数量接近于V^2的情况下,使用堆优化的Dijkstra算法可能不如普通的Dijkstra算法效率高。在这种实现方式下,每个节点最多入堆一次,出堆一次,更新堆中节点的距离一次,因此时间复杂度主要由堆的操作决定。总的时间复杂度为O((V+E)logV),其中V是节点数量,E是边的数量。主要用到迪杰斯特拉找最小环,堆优化。

2023-11-29 22:02:48 703 1

空空如也

空空如也

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

TA关注的人

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