网络流
sunyutian1998
这个作者很懒,什么都没留下…
展开
-
Minimal k-covering CodeForces - 976F
点击打开链接具体建图看官方题解点击打开链接因为要求最小的边覆盖 所以要去掉最多的边 所以可以用网络流来解决先从最大值到最小值来枚举 源点到二分图第一部分以及二分图第二部分到汇点所连的边的权值代表当前情况下每个点需要去掉几条边 然后跑完一遍最大流后残量网络中的边即为所求 然后加大源汇点的流量 表示下一次要多去掉一些边#include <bits/stdc++.h>us...原创 2018-05-11 15:09:41 · 170 阅读 · 0 评论 -
Marriage Match IV HDU - 3416
点击打开链接这个题也是看了题解才想到要用最短路和网络流结合的。。题目要求每次只能走最短路 意思不是走一次最短路就把这条路径删除 然后再找新的最短路即原图的次短路 而是仍然找一条和最开始的最短路长度一样的路径这样所有构成最短路的边都是可以确定的反向建图 dis1[n]代表从起点ss到每个点的最短距离 dis2[n]代表从终点ee到每个点的最短距离 对于一条边edge[i] 如果di...原创 2017-12-02 09:17:55 · 197 阅读 · 0 评论 -
Escape HDU - 3605
点击打开链接有10^5个人 会超时间 但只有10个星球 可以进行状态压缩(T了两次看了博客才知道..)假设有5个星球 对于某一个人 他只去 0 和 3 星球 那他的状态就是 1 0 0 1 0 当做二进制压缩后表示就是 2^0+2^3=9(对于每一个星球 只能选择去或不去 即为1或0 如此这个状态就唯一对应一个二进制数 而这个二进制数与该状态也是唯一对应的)这样10^5个点就减少为...原创 2017-10-21 13:00:43 · 213 阅读 · 0 评论 -
PIGS POJ - 1149
点击打开链接这个题的建图比较有难度也比较神奇 以每个买主为中心抽象为一层 而这每一层又包含了其他所有猪圈与该买主的关系具体请点击这篇博客 有图看 很直观点击打开链接 #include <stdio.h>#include <queue>#include <cstring>#include <algorithm>using ...原创 2017-10-13 21:21:50 · 286 阅读 · 0 评论 -
Optimal Milking POJ - 2112
点击打开链接这道题要先通过floyd求任意两点之间的最短路 再二分最长路径 抽象源点汇点 源点到牛边长是1 牛到机器根据当前最长路决定是1还是0 机器到汇点边为m然后通过最大流判断是否可行即可 #include <stdio.h>#include <queue>#include <cstring>#include <algorith...原创 2017-10-05 10:13:04 · 230 阅读 · 0 评论 -
Secret Milking Machine POJ - 2455
点击打开链接二分最大边 记为lim 不超过lim的边容量记为1 否则记为0 再抽象一个源点 从源点到1的容量为题目所给的t 然后以此建图 看是否满流感觉网络流的抽象建图很关键 这道题看了别人的建图才会的...符合条件就是1 即存在 反之就是0 即不存在 这样就把一个记录路径长度的图转化为记录路径是否可行的图 每增广一次图中就少一条路 长知识了! #include <st...原创 2017-10-01 20:58:03 · 230 阅读 · 0 评论 -
Task Schedule HDU - 3572 + Alice's Chance POJ - 1698
点击打开链接hdu这个题卡时间 之前的EK和dinic板子根本过不了 才换成了isap但是对isap还有一些不理解的地方 留个坑吧..poj上还有一道基本一样的hdu 3572#include <bits/stdc++.h>using namespace std;#define N 0x3f3f3f3f struct node{ int v...原创 2017-09-29 13:12:07 · 238 阅读 · 0 评论 -
Fantastic Graph 计蒜客
https://nanti.jisuanke.com/t/31447逆向考虑 先把所有边都加上再删去 并记录度数 以及最小最大度数min max如果min<l 那肯定是不符题意的 因为这时的度数是每个点所能到达的极限在min>=l基础上 若max<=r则随便加边都可符合题意只有min>=l&&max>r是需要搞的 这时将所有点划分成两个...原创 2018-09-08 18:30:35 · 298 阅读 · 0 评论 -
星际战争 HYSBZ - 3993
https://www.lydsy.com/JudgeOnline/problem.php?id=3993二分时间t 看规定时间内能否消灭全部机器人 sss(大源点)向ss(小源点)连权值为sum(a[1]+a[2]+...+a[n])的边 ss向m个炮塔连b[i]*t的边 m个炮塔向n个机器人连b[i]*t的边n个机器人向汇点连a[i]的边#include <cst...原创 2019-03-17 12:53:54 · 185 阅读 · 0 评论