洛谷 P3171 CQOI2015 網路吞吐量

2021-07-30 16:49:34 字數 2065 閱讀 5182

題目描述

路由是指通過計算機網路把資訊從源位址傳輸到目的位址的活動,也是計算機網路設計中的重點和難點。網路中實現路由**的硬體裝置稱為路由器。為了使資料報最快的到達目的地,路由器需要選擇最優的路徑**資料報。例如在常用的路由演算法ospf(開放式最短路徑優先)中,路由器會使用經典的dijkstra演算法計算最短路徑,然後盡量沿最短路徑**資料報。現在,若已知乙個計算機網路中各路由器間的連線情況,以及各個路由器的最大吞吐量(即每秒能**的資料報數量),假設所有資料報一定沿最短路徑**,試計算從路由器1到路由器n的網路的最大吞吐量。計算中忽略**及傳輸的時間開銷,不考慮鏈路的頻寬限制,即認為資料報可以瞬間通過網路。路由器1到路由器n作為起點和終點,自身的吞吐量不用考慮,網路上也不存在將1和n直接相連的鏈路。

輸入輸出格式

輸入格式:

輸入檔案第一行包含兩個空格分開的正整數n和m,分別表示路由器數量和鏈路的數量。網路中的路由器使用1到n編號。接下來m行,每行包含三個空格分開的正整數a、b和d,表示從路由器a到路由器b存在一條距離為d的雙向鏈路。 接下來n行,每行包含乙個正整數c,分別給出每乙個路由器的吞吐量。

輸出格式:

輸出乙個整數,為題目所求吞吐量。

輸入輸出樣例

輸入樣例#1:

7 10

1 2 2

1 5 2

2 4 1

2 3 3

3 7 1

4 5 4

4 3 1

4 6 1

5 6 2

6 7 1

1 100

20 50

20 60

1 輸出樣例#1:

70 說明

對於100%的資料,n<=500,m<=100000,d,c<=10^9

【分析】

題面=題解系列

先求一遍spfa,然後把不是最短路的邊刪掉…然後拆點限制容量跑一邊dinic…

【**】

#include

#include

#include

#include

#define ll long long

#define fo(i,j,k) for(i=j;i<=k;i++)

using

namespace

std;

const ll inf=1e16;

const

int mxn=505;

queue

q;ll n,m,s,t,cnt;

ll d[mxn],dis[mxn];

ll head[mxn],vis[mxn],x[mxn],y[mxn],d[mxn];

struct edge f[200005];

inline ll read()

while(ch>='0'&&ch<='9') x=(x<<1)+(x<<3)+ch-'0',ch=getchar();

return x*f;

}inline

void add(int u,int v,ll d)

inline

void add2(int u,int v,ll flow)

inline

void spfa()}}

}inline

bool bfs()

}if(dis[t]>0) return

1; return0;}

inline ll find(ll u,ll low)

}if(!sum) dis[u]=-1;

return sum;

}int main()

spfa();

memset(head,0,sizeof head);

memset(f,0,sizeof f);cnt=0;

fo(i,1,m)

fo(i,1,n)

add2(s,1,inf),add2(n+n,t,inf);

while(bfs())

ans+=find(s,inf);

printf("%lld\n",ans);

return

0;}

P3171 CQOI2015 網路吞吐量

題目描述 路由是指通過計算機網路把資訊從源位址傳輸到目的位址的活動,也是計算機網路設計中的重點和難點。網路中實現路由 的硬體裝置稱為路由器。為了使資料報最快的到達目的地,路由器需要選擇最優的路徑 資料報。例如在常用的路由演算法ospf 開放式最短路徑優先 中,路由器會使用經典的dijkstra演算法...

洛谷 P3168 CQOI2015 任務查詢系統

咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕咕 kono題面噠!最近實驗室正在為其管理的超級計算機編制一套任務管理系統,而你被安排完成其中的查詢部分。超級計算機中的任務用三元組 s i,e i,p i 描述,s i,e i,p i 表示任務從第 s i 秒開始,在第 e i 秒後結束 第 s i...

洛谷 CQOI2015 選數 解題報告

我們知道,從區間 l,h l 和 h 為整數 中選取 n 個整數,總共有 h l 1 n 種方案。小 z 很好奇這樣選出的數的最大公約數的規律,他決定對每種方案選出的 n 個整數都求一次最大公約數,以便進一步研究。然而他很快發現工作量太大了,於是向你尋求幫助。你的任務很簡單,小 z 會告訴你乙個整數...