题目 建立一个二分图,左右各n个点,在左边的第x个点和右边的第y个点之间连一条权值为\(a_{x,y}\)的边.根据"积和式"的定义,我们是要在矩阵中选择n个位置,满足任意两个位置不共行.不共列,并计算所有选择方案的对应位置的值的积之和.显然,每一种选位置的方案对应这个二分图的一个完美匹配,我们现在要计算这个二分图每一个完美匹配的匹配边的边权乘积之和.左边和右边都有1e5个点,一共1e10条边,这是很多的:但是边权不是1的边只有50条,这就很好,考虑怎么略去边权为1的边的计算.对于每条…
[题解]284E. Coin Troubles(dp+图论建模) 题意就是要你跑一个完全背包,但是要求背包的方案中有个数相对大小的限制 考虑一个\(c_i<c_j\)的限制,就是一个\(c_i\)一定可以对应一个\(c_j\),一个常见的钦定手法是,直接把\(c_j\)的权值捆绑在\(c_i\)上,实现选一个\(c_i\)必选一个\(c_j\).但是题目里是大于号怎么办,那就直接在背包中钦定先拿一个\(c_j\)即可. 现在问题就是维护这一个捆绑的关系,我们可以直接根据差分约束的那种方法建模出来…
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…
题目链接:Python Indentation 题意: Python是没有大括号来标明语句块的,而是用严格的缩进来体现.现在有一种简化版的Python,只有两种语句: (1)'s'语句:Simple statements. 相当于一般语句.(2)'f'语句:For statements. 相当于for循环,并且规定它的循环体不能为空. 然后给你一段没有缩进的Python程序,共n行(n <= 5000).问你添加缩进后,有多少种合法且不同的Python程序. 题解:题目解析 DP过去,如果第i个…
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  下午 树链剖分  每一条边要么属于重链要么轻边 证明: 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 5  上午 POJ 1125 Stockbroker Grapevine 有 N 个股票经济人可以互相传递消息,他们之间存在一些单向的通信路径.现在有一个消息要由某个人开始传递给其他所有人,问应该由哪一个人来传递,才能在最短时间内让所有人都接收到消息. Solution 全局最短路 Floyd POJ 1502 MPI Maelstrom 给出 N 个处理器之间传递信息所需时间矩阵的下三角,求信息从第一个处理器传到其它所有处理器所需时间最大值. Solution 单源最长路…
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 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与…