网络流入门题目 - bzoj 1001】的更多相关文章

现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为(1,1),右下角点为(N,M)(上图中N=4,M=5).有以下三种类型的道路  1:(x,y)<==>(x+1,y)  2:(x,y)<==>(x,y+1)  3:(x,y)<==>(x+1,y+1)  道路上的权值表示这条路上最多能够通过的兔子数,道路是无向的. 左上…
题目大意 现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的.而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为 (1, 1),右下角点为 (N, M) (上图中N=4, M=4).有以下三种类型的道路 1: (x, y) <==> (x+1, y) 2: (x, y) <==> (x, y+1) 3: (x, y) <==> (x+1, y+1) 道路上的权值表示这条路上…
题目链接 网络流入门@_@,此处本人用的刘汝佳的Dinic模板 #include<bits/stdc++.h> using namespace std; const int INF = 0x3f3f3f3f; struct Edge { int from,to,cap,flow; }; int n,s,t,m; struct Dinic { , M = ; //N对应点数 vector<Edge> edges; vector<int> G[N]; bool vis[N]…
(我有什么错误或者你有什么意见,欢迎留言或私聊!谢谢!) (Ps:以前听说过网络流,想着以后再学,这次中南多校赛也碰到有关网络流的题目,想着这两天试着学学这个吧~~ 这是本人网络流入门第二题,不知道怎么解释, 给大家推荐几个博客方便大家入门网络流: 网络流入门博客1 网络流入门博客2 看之前大家可以去百度一下网络流入门术语,这对新手入门网络流会有一些帮助) 题意: 用人话解释: 1. 给你 n 个点,m个边,num1个发电站,num2个用户: 2. 每条边有一个负载量,求用户收到的最大用电量:…
Description When Frodo, Sam, Merry, and Pippin are at the Green Dragon Inn drinking ale, they like to play a little game with parchment and pen to decide who buys the next round. The game works as follows: Given an m × n rectangular tile with each sq…
草地排水 洛谷P2740 最大流入门题目 题意 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没的烦恼(不用担心,雨水会流向附近的一条小溪).作为一名一流的技师,农夫约翰已经在每条排水沟的一端安上了控制器,这样他可以控制流入排水沟的水流量. 农夫约翰知道每一条排水沟每分钟可以流过的水量,和排水系统的准确布局(起点为水潭而终点为小溪的一张网).需要注意的是,…
以下均移自 周冬的<两极相通-浅析最大最小定理在信息学竞赛中的应用> 平面图性质 1.(欧拉公式)如果一个连通的平面图有n个点,m条边和f个面,那么f=m-n+2 2.每个平面图G都有一个与其对偶的平面图G* G*中的每个点对应G中的一个面 G*中的每个点对应G中的一个面 对于G中的每条边e e属于两个面f1.f2,加入边(f1*, f2*) e只属于一个面f,加入回边(f*, f*) 平面图G与其对偶图G*之间存在怎样的关系呢? G的面数等于G*的点数,G*的点数等于G的面数, G与G*边数…
每头牛的梦想就是成为牛群中最受欢迎的牛. 在一群N(1 <= N <= 10,000)母牛中, 你可以得到M(1 <= M <= 50,000)有序的形式对(A,B),告诉你母牛A认为母牛 B很受欢迎. 由于流行是传递性的,如果A认为B很受欢迎,B认为C受欢迎,那么A也会认为C是流行的,即使这不是输入中有序对明确规定的. 你的任务是计算每头奶牛认为受欢迎的奶牛数量. 水题 强连通入门题目. tarjin缩点  然后就变成一棵树, 然后就是求有多少个点的出度为0 输入这个点里面包含的…
关于树形DP几道入门题目 今天恶补树形DP,感觉海星. 其实挺简单的. 介绍几道例题,我会的. 1.洛谷P1352 没有上司的舞会 我的一篇题解 我们可以考虑每一个节点都是有两种情况. 一个是被邀请:另一个是不会被邀请. 前者后果就是子节点不可以被选择: 后者结果就是子节点可以被选择. 于是关系明确,状态转移方程为: dp[root][0] += std::max(dp[son[root][i]][0],dp[son[root][i]][1]); dp[root][1] += dp[son[ro…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1001 算法讨论: 1.可以用最大流做,最大流等于最小割. 2.可以把这个图转化其对偶图,然后在对偶图上跑最短路即可. 一个平面图的最小割等价于其对偶图从S到T的最短路.并不是所有的图都有对偶图,平面图也有一定的要求,自己可以百度一下. 代码(用BZOJ的数据测过了,但是在BZOJ上过不去.爆WA,并不知道是为什么,里面有个特判,并不知道有没有用处.) #include <iostream…