2.16图论专题PB
超神建图技巧合集
每个骨牌变成让空位移动的至多两条有向边,证明图中无环,形成森林。
然后黑白染色,两类森林互不影响。转为每次标记 A 类一棵子树与 B 类一棵子树形成的所有点对。
再转化,子树 -> 欧拉序列,变为矩阵交,线段树搞定。
0 为右走一步,1 为左走一步,操作即为将一段回路反着走。
可猜想证明导出的无向图的任意一条欧拉路径均合法。
字典序最小的欧拉路径用贪心。本题中可以记录一个点左边的边全部被访问判断是否可以向右走。
转化为每次删掉一些基环树中所有的环,然后将失去出边的点重新指向下一个点。然后分层 dp。
在数轴上的建图,在模的意义下求最短路。
Pollar-Rho 很好用,但是一定要特判掉边界情况啊啊啊啊。。。(我的 Pr 在 n=4 时会死循环)
利用强连通分量的性质就是了,没什么好说的(
注意遍历补图 $k$ 条边的时间复杂度为 $O(m+k)$ ($m$ 为原图边数)。
1. 莫比乌斯反演可以迅速求出一个数列中与某一个数互质的数个数
2. $10^7$ 内的数质因子实测最多有 $448$ 个hh
3. $O(n \log n)$ 筛出 $10^7$ 内所有数的因数只需要约 1.5s
4. 建图技巧:取补图。 题目中原来是要 “不互素连边,求 团 或 无 n-1 度点” ,变为 “互素连边,求 独立集 或 无孤立点”,easy~
没什么,注意有时候说“最少进行多少次”,有时候可能是仔细思考,分析性质,只需要1~2次。。。
特别是像这道题,说“最少进行多少次”,还要算出“有多少种方案取到最小值”。。。
一个很厉害的技巧:凭空将无向图拆点为二分图。
不要问为什么,想到就行了(
然后,一个点可以根据度数拆成多个点。
然后这道题就成了:给定一个二分图,其中点的最大度数为 $k$,求一种边染 $k$ 色的方案,使得每个点出发的边颜色各不相同。
无脑增广:每次新加一条边 $(x,y)$,如果有一种颜色可以同时满足 x 和 y 就直接加入。
否则设 x 的一种合法颜色是 1,y 的一种合法颜色是2。
2.16图论专题PB的更多相关文章
- 正睿OI国庆DAY2:图论专题
正睿OI国庆DAY2:图论专题 dfs/例题 判断无向图之间是否存在至少三条点不相交的简单路径 一个想法是最大流(后来说可以做,但是是多项式时间做法 旁边GavinZheng神仙在谈最小生成树 陈主力 ...
- UVa567_Risk(最短路)(小白书图论专题)
解题报告 option=com_onlinejudge&Itemid=8&category=7&page=show_problem&problem=508"& ...
- 2014 UESTC暑前集训图论专题解题报告
A.方老师和缘分 http://www.cnblogs.com/whatbeg/p/3765621.html B.方老师和农场 http://www.cnblogs.com/whatbeg/p/376 ...
- 图论专题训练1-D(K步最短路,矩阵连乘)
题目链接 /* *题目大意: *求出从i到j,刚好经过k条边的最短路; * *矩阵乘法的应用之一(国家队论文): *矩阵乘法不满足交换律,矩阵乘法满足结合律; *给定一个有向图,问从A点恰好走k步(允 ...
- UVa753/POJ1087_A Plug for UNIX(网络流最大流)(小白书图论专题)
解题报告 题意: n个插头m个设备k种转换器.求有多少设备无法插入. 思路: 定义源点和汇点,源点和设备相连,容量为1. 汇点和插头相连,容量也为1. 插头和设备相连,容量也为1. 可转换插头相连,容 ...
- 图论专题1考试Problem1
Problem 1. bricksInput file: bricks.inOutput file: bricks.outTime limit: 1 secondjyb 在BUAA 天天被大神虐,所以 ...
- UVa10099_The Tourist Guide(最短路/floyd)(小白书图论专题)
解题报告 题意: 有一个旅游团如今去出游玩,如今有n个城市,m条路.因为每一条路上面规定了最多可以通过的人数,如今想问这个旅游团人数已知的情况下最少须要运送几趟 思路: 求出发点到终点全部路其中最小值 ...
- 并不对劲的图论专题(三):SPFA算法的优化
1.bzoj1489-> 这是个新套路. 我们希望找到最小的x,那么可以二分x,然后判断是否存在圈的边权的平均值小于等于x. 设圈的边权依次为w1,w2,w3,…,wk,平均值为p, 则有p= ...
- UVa10048_Audiophobia(最短路/floyd)(小白书图论专题)
解题报告 题意: 求全部路中最大分贝最小的路. 思路: 类似floyd算法的思想.u->v能够有另外一点k.通过u->k->v来走,拿u->k和k->v的最大值和u-&g ...
随机推荐
- [BUUCTF]PWN——gyctf_2020_borrowstack
gyctf_2020_borrowstack 附件 步骤: 例行检查,64位程序,开启NX保护 本地运行一下程序,看看大概的情况 64位ida载入,直接从main函数开始看程序, buf可以溢出0x1 ...
- 逻辑判断(Power Query 之 M 语言)
逻辑真:true 逻辑假:false 与函数:and true and true,结果为TRUE true and false,结果为FALSE false and false,结果为FALSE 或函 ...
- CF760A Petr and a calendar 题解
Content 输入两个数 \(m,d\),请输出 \(2017\) 年 \(m\) 月的日历[其中第一天是星期 \(d\)(如果 \(d=7\) 就是星期天)]需要印的列数. 格式见题目所述. 数据 ...
- LuoguP7478 【A】StickSuger 题解
Content 给定一个长度为 \(n\) 的仅包含小写字母的字符串 \(s\),请找到一个二元组 \((i,j)\)(\(i<j\))使得在交换字符串 \(s\) 的第 \(i\) 个和第 \ ...
- 贪心——122.买卖股票的最佳时机II
给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能同时参与多笔交易(你必须在再次 ...
- uniapp+nvue实现仿微信App聊天应用 —— 成功实现好友聊天+语音视频通话功能
基于uniapp + nvue实现的uniapp仿微信App聊天应用 txim 实例项目,实现了以下功能. 1: 聊天会话管理 2: 好友列表 3: 文字.语音.视频.表情.位置等聊天消息收发 4: ...
- 『学了就忘』Linux日志管理 — 92、日志轮替
目录 1.日志文件的命名规则 2.logrotate配置文件说明 3.logrotate配置文件的主要参数 1.日志文件的命名规则 日志轮替最主要的作用就是把旧的日志文件移动并改名,同时建立新的空日志 ...
- IDEA报错 Unable to open debugger port (127.0.0.1:63342): java.net.BindException "Address already in use
Unable to open debugger port (127.0.0.1:63342): java.net.BindException "Address already in use ...
- github fmt库语法+范例(fmt version :7.0.1)
!!版权声明:本文为博主原创文章,版权归原文作者和博客园共有,谢绝任何形式的 转载!! 作者:mohist fmt fmt 源码: https://github.com/fmtlib/fmt 本文翻译 ...
- 【LeetCode】506. Relative Ranks 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 排序 argsort 堆 日期 题目地址:https ...