DP&图论 DAY 3 下午 考试】的更多相关文章

DP&图论  DAY 6  下午  考试 样例输入 样例输出 题解 >50 pt      dij 跑暴力 (Floyd太慢了QWQ    O(n^3)) 枚举每个点作为起点,dijkstra,跑暴力  O( (n+m)logn ),寻找全局最短路 #include<iostream> #include<cstdio> #include<string> #include<cstring> #include<cmath> #inclu…
Problem AProblem Description有一天 Tarzan 写了一篇文章,我们发现这文章当中一共出现了 n 个汉字,其中第 i 个汉字出现了 ai 次,因为 Tarzan 不希望文章被别人偷看,他要给这 n 个字分别用一个特殊的字符串表示,其中每一个字符串由两类字符组构成,一类是 a,另一类是 ha,例如 ahaha 就是由 a. ha 和 ha 构成的,我们希望帮助 Tarzan 给每个汉字一个独一无二的字符串,其中不能存在两个字符串一个是另一个的前缀.我们同时希望文章尽量短…
DP&图论  DAY 4  下午 后天考试不考二分图,双联通 考拓扑排序 图论 图的基本模型 边: 有向边构成有向图 无向边构成无向图 权值: 1.无权 2.点权 3.边权 4.负权(dij不可以跑) 环: 1. 2.重边 3.有向无环图DAG 路径: 1.简单路径:不经过重复的点  1-->2-->3 不简单路径:经过重复点  1-->2-->3-->1-->4 2.连通,具有传递性 图: 1.树:n个点,n-1条边的无环连通图 2.完全图:一个无向图,图中任…
DP&图论  DAY 5  下午 树链剖分  每一条边要么属于重链要么轻边 证明: https://www.cnblogs.com/sagitta/p/5660749.html 轻边重链都是交替走的(此处重链可以走若干条边) 1.dfs1 统计子树大小,确定重儿子 2.dfs2 找重链       重链,子树,分别是连续的一段 每个结点属于一个重链 ta < tb a 跳到 ta 的父节点 logn 级别 将树序列化 SPOJ QTREE Query on a tree Solution 树…
DP&图论  DAY 2  下午 基础树形DP 前言◦ 1:与树或图的生成树相关的动态规划.◦ 2:以每棵子树为子结构,在父亲节点合并,注意树具有天然的子结构.这是很优美的很利于dp的.◦ 3:巧妙利用Bfs或Dfs序,可以优化问题,或得到好的解决方法.◦ 4:可以与树上的数据结构相结合.◦ 5:树形Dp的时间复杂度要认真计算,部分问题可以均摊复杂度分析.◦ 6:一般设f[u]表示u子树的最优价值或者是说方案数.◦或者f[u][k]表示u子树附加信息为k的最优值,往往是通过考虑子树根节点的情况进…
DP&图论  DAY 1  下午  区间和序列上的DP 序列上的DP >序列上的dp状态设计最基本的形式 F[i]表示以 i 结尾的最优值或方案数.◦ F[i][k]表示以 i 结尾附加信息为k的最优值或方案数.◦当然可以有多维附加信息.◦转移的话往往是枚举上一个断点.◦ F[i]=max { F[j]+ w(j+1,i) | j是一个满足转移条件的断点}.◦另一个很常见的是: f[i][j]前i个位置分成j段/选出j个的最优值.◦这是最简单的一类序列上的dp. >bzoj1003◦有…
DP&图论  DAY 7  上午 图论练习题 P2176 [USACO14FEB]路障Roadblock 先跑最短路(最多n条边,否则出环) 枚举每条边,加倍,再跑 dijkstra 取最大 P2939 [USACO09FEB]改造路Revamping Trails Solution 分层图最短路 从上一层到下一层,起点之间连边 Solution 暴力N^2建边 然后发现有一些边是没用的 假设存在3个点  (x1,y1)   (x2,y2)    (x3,y3) min( |x1-x3| , |…
DP&图论  DAY 6  上午 双连通分量 从u-->v不存在必经边,点 点双连通分量 边双连通分量 点/边双连通分量缩点之后变成一个树 找连通块的时候不越过割点或者桥 P3469 [POI2008]BLO-Blockade 1.不删割点,减少 2(n-1) 2.删割点,图分裂多个联通快,连通块大小*其他所有连通块大小 缩点之后得到一个树 P2860 [USACO06JAN]冗余路径Redundant Paths 缩点之后变成树,加多少边 二分图 无向图 二分图:点黑白染色,邻点不同色.…
DP&图论  DAY 5  上午 POJ 1125 Stockbroker Grapevine 有 N 个股票经济人可以互相传递消息,他们之间存在一些单向的通信路径.现在有一个消息要由某个人开始传递给其他所有人,问应该由哪一个人来传递,才能在最短时间内让所有人都接收到消息. Solution 全局最短路 Floyd POJ 1502 MPI Maelstrom 给出 N 个处理器之间传递信息所需时间矩阵的下三角,求信息从第一个处理器传到其它所有处理器所需时间最大值. Solution 单源最长路…
DP&图论  DAY 4  上午 概率与期望 概率◦某个事件A发生的可能性的大小,称之为事件A的概率,记作P(A).◦假设某事的所有可能结果有n种,每种结果都是等概率,事件A涵盖其中的m种,那么P(A)=m/n.◦例如投掷一枚骰子,点数小于3的概率为2/6=1/3. ◦如果两个事件A和B所涵盖的结果没有交集,那么P(A或B发生)=P(A)+P(B)◦还是掷骰子◦ P(点数小于3或点数大于4)=2/6+2/6=2/3◦如果A和B所涵盖的结果有交集◦那么P(A或B发生)=P(A)+P(B)-P(A与…