DAY 6 上午





如果不是割点,答案减少2(n-1)
如果删去割点,删去之后整个图分成多个连通块
每一个联通块的大小*其他连通块的大小之和

先求出缩点之后的树
加尽可能少的边使树变成一个边双
找出树上的所有叶子节点(度为一),然后在这些点之间连边直到所有的点度都为一






增广路的匹配边恰好比非匹配边少1
交换两种边,匹配边+1


最大流=最小割
dinic
每一次找到一条路,使得答案可以增加,更改实际流量
对于已经跑满流量的边先忽略他,从s出发bfs,标记每一个点的深度(到s的距离)
如果s到t联通,说明至少有一条增广路。
每次枚举一条出边,强制使用i+1层的边,找到一条路径,将流量更改
退流
加反向边
记录可扩充容量







首先,肯定有一种方案是每一个边对应一个点
不相交也就是说每个点只有一条入边,一条出边
每一种路径覆盖的方案对应了一种二分图匹配。每选中一个点,就有一个点不需要从自己出发
每选择一条出边,也就是在二分图中选择尽可能多的匹配
要最大化二分图选中的边数,因为这样才能减少答案(一个边两个点)


先算出每一个城镇下面能到达的城镇,建二分图,然后跑最小路径覆盖就完了




>和≥的区别
在跑最短路的时候只能跑≥,一般题目都是求整数解
那么我们只需要把边权+1就行了
建图:
x=1 把等号转化成大于等于和小于等于
把严格不等号转移成非严格不等号
每个人的糖果数不小于1
建立一个超级源点,到每一个点连一个长度为1的边。设d[0]=0
最长路算法在求的时候或满足很多限制。如果没有限制是不会凭空增大的
判断正环
为什么不能用最短路?
因为最短路不一定能到达所有的点(边的方向),而此时dis为inf,这显然不是我们想要的

设s[i]为a[i]的前缀和
a[l]+...+a[r]=k----->s[r]-s[l-1]=k
然后差分约束判断有没有解就行了


从任意一个点出发dfs

DAY 6 上午的更多相关文章
- SSH-Struts第三弹:传智播客视频教程第一天上午的笔记
一. 框架概述1.三大框架 : 是企业主流 JavaEE 开发的一套架构 Struts2 + Spring + Hibernate 2. 什么是框架?为什么要学框架 ?框架 是 实现部分功能的代码 ( ...
- JAVA判断当前时间是上午am还是下午pm
//结果为"0"是上午 结果为"1"是下午 public class GregorianTest { public static void main(Strin ...
- PKUSC 模拟赛 day2 上午总结
今天上午考得不是很好,主要还是自己太弱QAQ 开场第一题给的图和题意不符,搞了半天才知道原来是走日字形的 然后BFS即可 #include<cstdio> #include<cstr ...
- PKUSC 模拟赛 day1 上午总结
思考了一下第二题,觉得有无数种乱搞做法 类似什么bitset压位,MCS染色之类奇怪的做法 然而都是玄学正确性或者玄学复杂度 先放题解把 第一题显然具有单调性,二分就可以啦 O(nlogn),貌似输出 ...
- 第一天上午——HTML网页基础知识以及相关内容
今天上午学习了HTML基础知识以及相关内容,还有DW的基本使用方法. HTML(HyperText Markup Language):超文本标记语言,超文本:网页中除了包含文本文字之外,还包含了图片, ...
- 九月 26, 2017 10:18:14 上午 com.sun.jersey.server.impl.application.RootResourceUriRules <init> 严重: The ResourceConfig instance does not contain any root resource classes.
Tomcat启动错误:九月 26, 2017 10:18:14 上午 com.sun.jersey.server.impl.application.RootResourceUriRules <i ...
- 夏令营提高班上午上机测试 Day 2 解题报告
那一天,日照一中夏令营数据结构提高班的同学们终于想起了,被Day2上午的三道题支配的恐惧…… 是的..这一天的题有点难想.. 本来打算前天写这篇随笔,然而前天在机房和同学打luogu月赛…… 昨天 ...
- Day 1 上午
唉,上午就碰到一个开不了机的电脑,白白浪费了半个小时,真的难受QwQ POINT1 枚举 枚举也称作穷举,指的是从问题所有可能的解的集合中一一枚举各元素. 用题目中给定的检验条件判定哪些是无用的,哪些 ...
- 云栖大会day2总结 上午
第二天上午主要是参与了开发者专场 上 09:00-09:40 线上线下融合时代的工程师成长 李佩 饿了么高级算法总监 09:40-10:20 如何统一阿里巴巴代码规范:探寻工程师文化之路 玄坛 阿里巴 ...
- iOS 根据时间戳计算聊天列表的时间(上午/下午)
把时间戳转成聊天时间(上午 10:00 . 昨天 14:00 . 3月15日 15:00) +(NSString*)ChatingTime:(NSString *)timestring{ int ...
随机推荐
- Coding 地址
Coding 连接 https://dev.tencent.com/u/leexi
- Python 入门之常用运算符
Python 入门之常用运算符 Python中的运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算 1.常用运算符: (1)算数运算符: + - * / %(取余(模) ...
- Maven快速安装配置
环境:windows7_x86 maven3.3.3 maven是管理项目的常用工具,不用安装,直接配置即可.在配置maven前,需要先安装JDK. 1,安装JDK(注意此版本的Maven要 ...
- react找到对象数组中指定的值
找到对象数组中指定的值var array = [ { label: "Custom", value: "0" }, ...
- 自定义ajax函数(仿照jQuery)
AJAX介绍 AJAX = 异步 JavaScript 和 XML. 全称:Asynchronous Javascript And XML: AJAX 是一种用于创建快速动态网页的技术. 通过在后台与 ...
- JS 的 Array 和String 常混淆方法
知识一: 1.slice() 提取字符串 slice[ start, end) 如果参数为负数,表示从尾部开始算起. 2.subString() 提取字符串 3.subStr() 提取字符串 subS ...
- SolrCloud集群
1 SolrCloud简介 1.1什么是SolrCloud SolrCloud(solr 云)是 Solr 提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud. ...
- 012-linux系统管理——进程管理与工作管理
linux系统管理——进程管理 top 命令是使用 top - :: up :, user, load average: 0.06, 0.60, 0.48 #五分钟钱,十分钟前,十五分钟前负载的值根据 ...
- 013-linux系统管理——系统资源查看
linux系统管理——系统资源查看 ############# vmstat 命令 监控系统资源 ############# vmstat [刷新时间 刷新次数] [root@zabbix ~]# v ...
- PAT Advanced 1001 A+B Format (20 分)
Calculate a+b and output the sum in standard format -- that is, the digits must be separated into gr ...