摘要:
最小割的可行边:被某一种最小割方案包含的边。 充要条件: 1.满流。 2.在残余网络中找不到入点到出点的路径。 若不满流显然可以找到另一条更小的满流的限制流量的边。 若满流但在残余网络中能找到入点到出点的路径,那么需要同时割掉这条边和残余网络中路径上某条边才能实现“割”,而这两条边上的流量和一定等于 阅读全文
摘要:
最小费用最大流。 将每个技术人员拆成车数个点,技术人员i的第j个点代表技术人员i修的倒数第j辆车。 源点向所有技术人员点连一条容量为1费用为0的边。 所有技术人员点向所有车点连边:技术人员i的第j个点向第k个车点连一条容量为1费用为T[k][i]*j的边。 所有车点向汇点连一条容量为1费用为0的边。 阅读全文
摘要:
最小费用最大流。 首先,由于赛车只能由每个星球飞往引力比它大的星球,所以双向边其实是单向边。由于所有连边都是从小到大连,所以图是一张DAG。 大概就是“最小权路径覆盖”。 将每个点拆点。 源点向每个点的入点连一条容量为1费用为0的边。 源点向每个点的出点连一条容量为1费用为瞬移到该点所需时间的边。 阅读全文
摘要:
给定N个带权的开区间,第i个区间覆盖区间(ai,bi),权值为wi。现在要求挑出一些区间使得总权值最大,并且满足实轴上任意一个点被覆盖不超过K次。 1<=K<=N<=200.1<=ai<bi<=100000.1<=wi<=100000. 最小费用最大流。 将所有区间端点离散化到整数1到M,每个数对应 阅读全文
摘要:
N个盒子围成一圈,第i个盒子初始时有Ai个小球,每次可以把一个小球从一个盒子移到相邻的两个盒子之一里。问最少移动多少次使得每个盒子中小球的个数不超过1。 ΣAi<=N.1<=N<=1000. 最小费用最大流。 每个盒子作为一个点。 若Ai>1则从源点向此点连一条容量为Ai,费用为0的边。 若Ai=0 阅读全文
摘要:
期望dp。 考虑问题的简化版:一个数列有n个数,每位有pi的概率为1,否则为0。求以每一位结尾的全为1的后缀长度的期望。 递推就好了。 再考虑一发:一个数列有n个数,每位有pi的概率为1,否则为0。求以每一位结尾的全为1的后缀长度的平方的期望。 平方的期望显然不等于期望的平方。但是平方的期望也是可以 阅读全文
摘要:
有m个项目和n个员工,做项目i可以获得Ai元,但是必须雇用若干指定的员工。雇用员工j需要Bj元,一旦雇用便可以参与多个项目。问最大收益。 1<=M,N<=100. 最小割。 源点向每个项目点连一条容量为项目获利的边。 每个项目点向本项目需要的所有员工点连一条容量为正无穷的边。 每个员工点向汇点连一条 阅读全文
摘要:
最大流。 首先二分答案,问题转化为x首舞曲是否可行。 考虑建图,对每个人建立三个点,分别表示全体,喜欢和不喜欢。 源点向每个男生全体点连一条容量为x的边。 每个男生整体点向喜欢点连一条容量为正无穷的边,向不喜欢点连一条容量为k的边。 每个男生喜欢点向所有他喜欢的女生的喜欢点连一条容量为一的边,不喜欢 阅读全文
摘要:
最大流。 建图:首先将每根柱子拆成两个点。 每根柱子的入点向出点连一条容量为柱子高度的边。 每根柱子的出点向可以到达的柱子的入点连一条容量为正无穷的边。 源点向每根初始有蜥蜴的柱子的入点连一条容量为一的边。 每根可以跳出地图的柱子的出点向汇点连一条容量为正无穷的边。 跑一遍最大流就是最多能逃出的蜥蜴 阅读全文
摘要:
平衡树。 插入,删除,前驱,后继,实现名次树。 splay实现。 “查询值为x的数的排名,有多个相同的数输出最小名次”查询比x小的数的个数加一就行了。 阅读全文