題目鏈結
題目大意:求最短路樹上的最大流
題解:定義最短路樹如下:從源點1經過邊集t到任意一點i有且僅有一條路徑,且這條路徑是整個圖1到i的最短路徑,邊集t構成最短路樹。然後建圖就好了
我的收穫:最短路樹的應用
#include
#include
#include
#include
#include
using namespace std;
const int m=2005;
const int mm=100005;
#define ll long long
#define inf llong_max/10000
int n,m,t,t2,st,ed;
int lim[m],head[m],last[m],num[m],d[m],ri[m],ci[m];
int head2[m],q[mm];
ll dis[m];
bool vis[m],exit;
struct nodep[mm*4];
struct edgee[mm*4];
void add2(int u,int v,ll w)
void add(int u,int v,ll w)
void insert(int u,int v,ll w)
ll dfs(int
x,ll in)
}if(--num[d[x]]==0) exit=1;
d[x]++,num[d[x]]++,last[x]=head[x];
return ans;
}void build()
void work()}}
}void init()
int main()
BZOJ P3931 CQOI2015 網路吞吐量
先跑一遍最短路 把最短路上的點建乙個圖,然後需要拆點,因為權值在點上面 然後拆點限制流量 最後跑一邊最大流就可以了 include include include include includeusing namespace std int head 100003 exhead 100003 q 4...
3931 CQOI2015 網路吞吐量
time limit 10 sec memory limit 512 mb submit 1536 solved 628 submit status discuss 路由是指通過計算機網路把資訊從源位址傳輸到目的位址的活動,也是計算機網路設計中的重點和難點。網路中實現路由 的硬體裝置稱為路由器。為了...
CQOI2015 網路吞吐量
路由是指通過計算機網路把資訊從源位址傳輸到目的位址的活動,也是計算機網路設計中的重點和難點。網路中實現路由 的硬體裝置稱為路由器。為了使資料報最快的到達目的地,路由器需要選擇最優的路徑 資料報。例如在常用的路由演算法ospf 開放式最短路徑優先 中,路由器會使用經典的dijkstra演算法計算最短路...