8.3做题笔记

图论

经典题

n个点,求它包含指定边的生成树的个数
ans=nm2ai

CF1229E

考虑记忆化搜索,有效状态比较少
所以能过。。。

ucup21J Triangle City

发现图上每个点的度数都是偶数
我们可以找到起点到终点的最短路,删去
这样起点终点的度数就变成了奇数,整个图就成了欧拉路径
就做完了

CF704D

根据r,b的大小关系,可以判断尽可能多涂的颜色
建图,将s与每行相连,t与每列相连
每个点 行x连向列y
对于限制,可以转化为最小/大流量限制
求最大流即可

*CF1408H

观察可以发现,答案总数不会超过n2
那就将0分成左右两组
对于每个选择的bi,一定属于左边/右边
每种bi可以有多种位置选择

接下来考虑网络流建模
将每种颜色和源点S连一条边
再和自己出现的位置连边
出现的位置和最靠近自己的左/右组的0点连边
每个0点朝左/右连inf边,并向汇点连边
跑最大流即可

但是,这样会T掉
思考发现,最大流=最小割
考虑从左向右枚举非0元素,将他与0点的边割去
但后缀0点也有些要割去(画图理解)
用线段树维护即可
可参考https://www.luogu.com.cn/blog/292315/solution-cf1408h

*CF611H

不是很会

gym101221I

直接想的话,会想到选了x就不能选y的情况,然后跑最小点覆盖
但是,这不是二分图
我们再想会发现,可以枚举两个点
以他们之间的距离为半径,画圆取交
内部的点,按照我们的想法一定可以分成二分图
跑二分图即可

CF528E

边数一定是偶数
如果是偶数,就找出欧拉回路,交错定向
如果是奇数,随便加一个自环

gym101620c

树大小比较大的时候,直接暴力统计
小的时候预处理即可

AGC034D

中间建四种点,代表拆绝对值的四种情况
跑网络流即可

CCPC2022H

posted @   hubingshan  阅读(9)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示