上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 36 下一页
摘要: [luogu 2754] 家园 "传送门" 分层图上的最大流.按时间分层 建图方法: 时间t不断增加,每一天: (1)从源点向每一天的地球连容量为INF的边,流过该点相当于当天从地球出发 (2)从每一天的月亮向汇点连容量为INF的边,流过该点相当于当天到达月球 (3)从上一天的每一个中转站向当天的对 阅读全文
posted @ 2019-02-05 16:57 birchtree 阅读(300) 评论(0) 推荐(0) 编辑
摘要: [luogu 2763] 试题库问题 "传送门" 二分图多重匹配 建图方法: s=0,t=n+m+1 (1)S向第i个试题连边,容量为1,保证每个试题只被选一次 (2)第i个试题编号为i,向所属种类连边,容量为1 (3)第i个种类编号i+n,为向t连边,容量为需要该类型的数量 求出最大流f,如果f不 阅读全文
posted @ 2019-02-05 16:33 birchtree 阅读(347) 评论(0) 推荐(0) 编辑
摘要: [luogu 2766] 最长不下降子序列问题 "传送门" 第一问: $O(n^2)$ 的DP求LIS 为了下面叙述方便,我们将DP过程讲一遍 子状态:dp[i]表示以a[i]结尾的LIS长度 初始条件:dp[i]=1 状态转移方程:$dp[i]=dp[j]+1(j include include 阅读全文
posted @ 2019-02-05 16:06 birchtree 阅读(539) 评论(0) 推荐(0) 编辑
摘要: [luogu 3254] 圆桌问题 "传送门" 二分图多重匹配,将单位看作左部节点,餐桌看作右部节点 限制为每个左部节点最多连r[i]条边,每个右部节点最多连c[i]条边 最大流即可 cpp include include include include include include define 阅读全文
posted @ 2019-02-05 15:49 birchtree 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 由于期望的线性性,我们可以分别计算每个点对对答案的贡献 有三个人取数字,分开对每个人考虑 设每个人分别取了k个数,则一共有$C_n^k$种组合,选到每种组合的概率为$\frac{1}{C_n^k}$ 对于一个幸运点对,包含它的组合有$C_{n 2}^{k 2}$种(k个点中有 阅读全文
posted @ 2019-01-29 14:30 birchtree 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 考虑容斥原理,用总的方案数 不含质数的方案数 设$dp1[i][j]$表示前i个数,和取模p为j的方案数, $dp2[i][j]$表示前i个数,和取模p为j的方案数,且所有的数均不为质数 [1,m]中的质数可以线性筛出 则$dp1[i][j]=dp1[i 1][((j k) 阅读全文
posted @ 2019-01-29 12:00 birchtree 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 题面 "传送门" 分析 考虑网络流 注意到数据包走的是最短路,所以我们只需要考虑在最短路上的边 由于最短路可能有多条,我们先跑一遍Dijkstra,然后再$O(m)$ 遍历每条边(u,v,w) 如果dist[u]=dist[v]+w,则这条边肯定在最短路上 然后点的容量限制可以用拆点来解(常见套路) 阅读全文
posted @ 2019-01-29 11:21 birchtree 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 每个球向可以组成的完全平方数连边,会连出一个有向无环图 柱子上的球对应图上的路径,相当于最小路径点覆盖 求出拆点二分图,再用n 最大匹配数即可 include include include include include define maxn 100000 define maxm 100000 阅读全文
posted @ 2019-01-24 15:10 birchtree 阅读(668) 评论(0) 推荐(0) 编辑
摘要: 最小路径覆盖模板题 include include include include define maxn 155 define maxm 6005 using namespace std; int n,m; struct edge{ int from; int to; int next; }E[m 阅读全文
posted @ 2019-01-24 15:08 birchtree 阅读(396) 评论(0) 推荐(0) 编辑
摘要: [luogu 2756]飞行员配对方案问题 题面 "luogu 2756" 英国飞行员为左部节点,外国飞行员为右部节点,直接跑二分图匹配即可 cpp include include include define maxn 105 using namespace std; struct edge{ i 阅读全文
posted @ 2019-01-24 15:05 birchtree 阅读(517) 评论(0) 推荐(0) 编辑
上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 36 下一页