給一張網格圖,圖上有一些機械人,它們要到指定的地方,它們都只能往東和北移動,每條邊都有價值,但是只能計算一次,問可以達到的最大價值。
因為只能計算一次,所以可以這樣建邊:
之後:因為要最大費用,所以可以把邊權取反。
c od
e:
code:
code
:
#include
int a,b;
int p,q;
int mincost;
int s=
1,t=2;
int dis[
10000];
int vis[
10000];
int flow[
10000];
int pren[
10000];
int pree[
1000000];
int head[
1000000
],tot=1;
std::queue<
int>q;
struct edgee[
1000000];
intget_num
(int i,
int j)
void
add(
int x,
int y,
int flow,
int cost)
; head[x]
=tot;
e[++tot]=;
head[y]
=tot;
}bool
spfa()
}}}return dis[t]
!=0x3f3f3f3f;}
void
dinic()
}printf
("%d\n"
,mincost);}
main()
for(
int j=
0;j<=q;
++j)
for(
int i=
0;i++i)
for(
int i=
1;i<=a;
++i)
for(
int i=
1;i<=b;
++i)
dinic()
;return0;
}
網路流二十四題之二十 深海機械人問題
深海資源考察探險隊的潛艇將到達深海的海底進行科學考察。潛艇內有多個深海機械人。潛艇到達深海海底後,深海機械人將離開潛艇向預定目標移動。深海機械人在移動中還必須沿途採集海底生物標本。沿途生物標本由最先遇到它的深海機械人完成採集。每條預定路徑上的生物標本的價值是已知的,而且生物標本只能被採集一次。本題限...
網路流24題 深海機械人問題
網路流24題大多需要spj,所以需要乙個有spj的oj,本系列 均在www.oj.swust.edu.cn測試通過 這道題其實和數字梯形的第三個規律挺像的 點和路徑均可重合 唯一的差別就是這道題的路徑權值只能計算一次,那怎麼辦呢,其實不難,我們只要將容量為inf的邊的權值修改為0,在此基礎上再加一條...
深海機械人問題 網路流24題
思路 和方格取數差不多的一道題 只是輸入有點噁心 然而他好像提示了怎麼輸出 之後就是建圖標準最大費用最大流了 不知道為什麼spfa的最大流t了乙個點 難道說資料這麼喪心病狂嗎 zkw的話倒是50ms就跑完了 code 1 include 2 define dbg x cout x x endl34 ...