【NOI2014】 魔法森林---解题报告
摘要:
传送门 题目大意 给定 个点和 条边。每条边包含起点终点和两个精灵的最低限制,求最少需要携带的精灵数量。 题目解析 ~~直接套 LCT 板子~~ 将所有边按照进行升序排序,从小到大将边加入,在已经加入边的图上找路径的最大值,求出最大值和当前枚举的和用于更新全局的最小值答案。 为什么呢
二项式反演
摘要:
二项式反演 设 表示 个补集的交集大小, 表示 个原集的交集的大小。 $$f_n = \sum_{i=0}^n (-1)^i {n \choose i} g_i \Leftrightarrow g_n = \sum_{i=0}^n (-1)^i {n \ch
朱刘算法
摘要:
干什么的 朱刘算法就是最小生成树算法在有向图上的应用。 大概说说 给定一个有向图,有向图定义一个根节点,求一个最小树形图。 树形图就是一颗有向树。 而在这个算法中我们要给定几个条件: 没有有向环 每个点的入度为1(除了根节点之外) 放在题目中看 POJ 3164/AcWing 2417 先贪心的从每
Prufer 序列
摘要:
1.Prufer是干啥的 把一个无根树变成一个序列,也可以把一个序列变成一个序列 2.性质 1.prufer序列与无根树一一对应 2.度数为 的结点会在 序列中出现 次。 3.一个 个结点的无向完全图的生成树的个数 (Cayle
[动态树] Link-Cut Tree
摘要:
Link-Cut Tree 0x00 绪言 学长们讲 LCT 的时候,我在另一个机房摸鱼,所以没有听到,就回家看 yxc 的补了补。 0x01 什么是动态树 动态树问题, 即要求我们维护一个由若干棵子结点无序的有根树组成的森林,支持对树的分割, 合并, 对某个点到它的根的路径的某些操作, 以及对某个
【网络流24题】圆桌问题---解题报告
摘要:
传送门 题目大意 有一些单位和一些桌子,每个单位都排除了一定量的领导参加会议,从同一个单位来的代表不在同一个桌子上,给出一个满足要求的代表就餐方案。 题目分析 这个题说实话,和飞行员那个题很像,但是有区别的。 还是,考虑dinic如何建图。 先按照二分图思路分两个集合,分别为代表和桌子。这个题和飞行
【网络流24题】飞行员配对方案---解题报告
摘要:
传送门 题目大意 有一群开飞机的,他们分为英国人和非英国人。对于飞行员的进行搭配,设计一个找出最佳飞行员配对方案,使皇家空军一次能派出最多的飞机。 题目分析 这个题其实是可以用匈牙利算法实现的,时空复杂度,观察数据范围,其实是不会超时的。但是使用dinic则可以在计算
Dinic 算法
摘要:
#include<bits/stdc++.h> #define int long long using namespace std; const int N = 10010; const int M = 200010; //由于残留网络有反向边,乘二 const int INF = 1e12;//无
网络流--基础概念
摘要:
流网络 带权的有向图 G=(V,E),满足以下条件,则称为网络流图: 仅有一个入度为0的顶点s,称s为源点 仅有一个出度为0的顶点t,称t为汇点 每条边的权值都为非负数,称为该边的容量,记作c(i,j)。 我们来随便画一个小图 这个东西可以理解成什么呢,源点s是一个水库,一个无尽水的水库,然后我们把