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 结尾附加 ...
随机推荐
- CentOS7 使用光盘镜像作为yum源
1. 首先,如果是虚拟机,则确认guest有光驱并且处于激活状态,如果是真机则在光驱中插入光盘 :-) 2. mkdir /media/cdrom mount /dev/cdrom /media/c ...
- mybatis sql语句中 in() 长度为0或null的情况
mybatis sql语句中 in() 长度为0或null的情况 比如: select * from A where colName IN <foreach collection="m ...
- Python之for循环与while循环
for语句格式for x in range(起始值,结束值,步幅) 执行语句输出0,100各个数字for i in range(0,101) print(i)输出0,100的偶数for i in ra ...
- 05-【session、cookie】
session.cookie 1.HttpSession概述>HttpSession是由JavaWeb提供的,用来会话跟踪的类.session是服务器端对象,保存在服务器端!!!>Http ...
- Boost::pool (1)
POOL 什么是pool 池分配是一种非常快速的内存分配方案,但其使用受到限制.有关池分配的更多信息(也称为简单隔离存储,请参阅 池化概念和简单隔离存储). 我为什么要使用Pool? 使用池可以更好地 ...
- 5.Nginx的session一致性(共享)问题配置方案1
1:Session共享 为什么要实现共享,如果你的网站是存放在一个机器上,那么会话数据就在这台机器,但是如果你使用了负载均衡把请求分发到不同的机器呢?这个时候会话 id在客户端是没有问题的,但是如果用 ...
- JSON跨域读取那点事(JSONP跨域访问)
最近在码一个小项目,需要远程读取json.因为需求很少,如果引用jquery使用其getjson方法就显得很浪费嘛= = 这篇文章很详细的解释了JSON跨域读取的前世今生,把原理讲得很透彻.特此分享. ...
- sscanf功能详解(转)
在处理字符串的程序当中,经常会分析字符串,从一大长串的字符串截取我们需要的数据,这如果通过自己手写函数来分析,虽然可以,但当你知道sscanf的功能,那就自己写函数分析就显得多此一举. 这些函数的使用 ...
- grub命令行和配置文件配置配置信息
一.grub简介 GNU GRUB(简称“GRUB”)是一个来自GNU项目的启动引导程序.GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系 ...
- 1、Socket通信
[TCP] 服务器端:无目标插座升级为有目标插座后,就可以通过有目标的插座收发数据 客户端: 实战:此案例有利于理解Socket的工作流程. 缺点:服务器只能接收1个客户端的连接,因为只写了一个Acc ...