DP&图论 DAY 6 上午
DP&图论 DAY 6 上午
双连通分量
从u-->v不存在必经边,点
点双连通分量
边双连通分量
点/边双连通分量缩点之后变成一个树
找连通块的时候不越过割点或者桥
P3469 [POI2008]BLO-Blockade
1.不删割点,减少 2(n-1)
2.删割点,图分裂多个联通快,连通块大小*其他所有连通块大小
缩点之后得到一个树
P2860 [USACO06JAN]冗余路径Redundant Paths
缩点之后变成树,加多少边
二分图
无向图
二分图:点黑白染色,邻点不同色。
>
二分图的等价条件
二分图匹配
分成两列,左右相连
匈牙利算法
匹配边比非匹配边少1,然后交换,匹配边多1
dfs
一个点的匹配边只有一个
网络流
最小顶点覆盖 Knoig 定理
一个点,可以选中所有临边
国际棋盘是黑白染色的
POJ 3041 Asteroids
Solution
坐标图建图
x 坐标一列, y 坐标一列,然后对于一个坐标,x 坐标向 y 坐标连边
最小覆盖=最大匹配
最小路径覆盖
原图中的路径和二分图中的匹配数是一一对应的
要使得每个点唯一入度唯一出度,才能保证匹配
一个选中的边确定了一个出点得到匹配
没有入边的点只能放飞自我等待匹配
Solution
差分约束
Solution
1.建边
X=1 A >= B&&A <= B
X=2 A <= B-1
X=3 A >= B
X=4 A >= B+1
X=5 A <= B
因为在求最长路的时候,保证的是 if(dis[v]<dis[u]+w) dis[v]=dis[u]+w , 所以是改成 >=
( 其实最长路是最小的最长路
2.建超级远点,与每个点连边 1
从超级远点出发跑最长路,可能有负数,SPFA
Solution
这题都是等式
以 Si 表示 Ai 的前缀和,则每个限制形如 Su - Sv=k,将其拆
分为两个不等式
# Su - Sv ≤ k
# Su - Sv ≥ k 即 Sv - Su ≤ -k
差分约束后如果出现负环,则信息有假。
当然,对于这种全部为等式的差分约束问题,用 DFS 或 BFS 判
断即可,不需要应用最短路算法。
a.cpp
Solution
DP&图论 DAY 6 上午的更多相关文章
- DP&图论 DAY 7 上午
DP&图论 DAY 7 上午 图论练习题 P2176 [USACO14FEB]路障Roadblock 先跑最短路(最多n条边,否则出环) 枚举每条边,加倍,再跑 dijkstra 取最大 ...
- DP&图论 DAY 5 上午
DP&图论 DAY 5 上午 POJ 1125 Stockbroker Grapevine 有 N 个股票经济人可以互相传递消息,他们之间存在一些单向的通信路径.现在有一个消息要由某个人开 ...
- DP&图论 DAY 4 上午
DP&图论 DAY 4 上午 概率与期望 概率◦某个事件A发生的可能性的大小,称之为事件A的概率,记作P(A).◦假设某事的所有可能结果有n种,每种结果都是等概率,事件A涵盖其中的m种,那 ...
- DP&图论 DAY 3 上午
DP&图论 DAY 3 上午 状态压缩dp >状态压缩dp ◦状态压缩是设计dp状态的一种方式.◦当普通的dp状态维数很多(或者说维数与输入数据有关),但每一维总量很少是,可以将多维 ...
- DP&图论 DAY 6 下午 考试
DP&图论 DAY 6 下午 考试 样例输入 样例输出 题解 >50 pt dij 跑暴力 (Floyd太慢了QWQ O(n^3)) 枚举每个点作为起点,dijks ...
- DP&图论 DAY 5 下午
DP&图论 DAY 5 下午 树链剖分 每一条边要么属于重链要么轻边 证明: https://www.cnblogs.com/sagitta/p/5660749.html 轻边重链都是交 ...
- DP&图论 DAY 4 下午图论
DP&图论 DAY 4 下午 后天考试不考二分图,双联通 考拓扑排序 图论 图的基本模型 边: 有向边构成有向图 无向边构成无向图 权值: 1.无权 2.点权 3.边权 4.负权(dij不 ...
- DP&图论 DAY 2 下午
DP&图论 DAY 2 下午 基础树形DP 前言◦ 1:与树或图的生成树相关的动态规划.◦ 2:以每棵子树为子结构,在父亲节点合并,注意树具有天然的子结构.这是很优美的很利于dp的.◦ 3 ...
- DP&图论 DAY 1 下午
DP&图论 DAY 1 下午 区间和序列上的DP 序列上的DP >序列上的dp状态设计最基本的形式 F[i]表示以 i 结尾的最优值或方案数.◦ F[i][k]表示以 i 结尾附加 ...
随机推荐
- export CommonJS AMD ES6
export https://www.cnblogs.com/fayin/p/6831071.html 导入文件: a - b - c ,对象隔代消失,可转成函数返回 导入模块对象(命名) ...
- Java学习笔记【十二、网络编程】
原计划的学习结束时间是3月4日,目前看来已经延迟了,距离低标还差一些,多方面原因,也不找借口,利用周末赶赶进度,争取本周末把低标完成吧! 参考: http://www.runoob.com/java/ ...
- Odoo的 数据添加修改删除代码和对应的方式
完整的可用命令如下: (0, _ , {‘field’: value})新建一条记录并将其与之关联 (1, id, {‘field’: value})更新已关联记录的值 (2, id, _)移除关联并 ...
- Delphi 卡通控件
樊伟胜
- 使用busybox1.21.1制作根文件系统
1. 下载源码 https://busybox.net/downloads/ 2. 解压 3. 修改Makefile ~/busybox-1.21.1$ vi Makefile 164行: 修改前:C ...
- ubuntu安装软件apt-get
一. apt-get用法 apt 0.8.16~exp12ubuntu10.26 for i386 compiled on Aug 5 2015 19:06:21Usage: apt-get [op ...
- redis编译和安装出现错误
redis编译到时候出现错误,记录一下原因 1.下载redis,https://redis.io/download ,一般选择稳定版本,稳定版的版本号是偶数,当前最新版本是5.0.4,Linux可直接 ...
- 特殊字符的过滤方法,防sql防注入代码的过滤方法
特殊字符的过滤方法 function strFilter($str){ //特殊字符的过滤方法 $str = str_replace('`', '', $str); $str = str_replac ...
- C++——INI文件详解
原创声明:本文系博主原创文章,转载及引用请注明出处. 1. INI文件介绍 INI是英文单词 INItialization 的缩写,常作为Windows系统下的配置文件.INI文件是文本文件,通常用于 ...
- 如何在VPC中安装Ubuntu
在虚拟机 VPC2007 中安装Ubuntu 方法A:(断网络连接) 1.用载入ISO镜像启动一台标准的 xp设置的虚拟机 2.按 F4 选择启动模式,选择图形模式并确认. 3.按 F6 在启动配置中 ...