洛谷P4012 深海機械人問題 費用流

2022-04-30 15:12:15 字數 2163 閱讀 6028

深海資源考察探險隊的潛艇將到達深海的海底進行科學考察。

潛艇內有多個深海機械人。潛艇到達深海海底後,深海機械人將離開潛艇向預定目標移動。

深海機械人在移動中還必須沿途採集海底生物標本。沿途生物標本由最先遇到它的深海機械人完成採集。

每條預定路徑上的生物標本的價值是已知的,而且生物標本只能被採集一次。

本題限定深海機械人只能從其出發位置沿著向北或向東的方向移動,而且多個深海機械人可以在同一時間佔據同一位置。

用乙個 p\times qp×q 網格表示深海機械人的可移動位置。西南角的座標為 (0,0)(0,0) ,東北角的座標為 (q,p)(q,p) 。

給定每個深海機械人的出發位置和目標位置,以及每條網格邊上生物標本的價值。

計算深海機械人的最優移動方案, 使深海機械人到達目的地後,採集到的生物標本的總價值最高。

輸入格式:

檔案的第 11 行為深海機械人的出發位置數 aa ,和目的地數 bb 。

第 22 行為 pp 和 qq 的值。

接下來的 p+1p+1 行,每行有 qq 個正整數,表示向東移動路徑上生物標本的價值,行資料依從南到北方向排列。

再接下來的 q+1q+1 行,每行有 pp 個正整數,表示向北移動路徑上生物標本的價值,行資料依從西到東方向排列。

接下來的 aa 行,每行有 33 個正整數 k,x,yk,x,y ,表示有 kk 個深海機械人從 (x,y)(x,y) 位置座標出發。

再接下來的 bb 行,每行有 33 個正整數 r,x,yr,x,y ,表示有 rr 個深海機械人可選擇 (x,y)(x,y) 位置座標作為目的地。

a行和b行輸入時橫縱座標要反過來

輸出格式:

輸出採集到的生物標本的最高總價值.

輸入樣例#1: 複製

1 1

2 21 2

3 45 6

7 28 10

9 32 0 0

2 2 2

輸出樣例#1: 複製

42
1\leq p,q\leq151≤p,q≤15

1\leq a\leq 41≤a≤4

1\leq b\leq 61≤b≤6

費用流應該比較顯然

就是讀入比較坑爹

需要把整張圖反過來

從s向每個機械人開始的地方連容量為機械人數量,費用為0的邊

從每個機械人向t連容量為數量,費用為0的邊

相鄰格仔之間連一條容量為inf,費用為0的邊,再連一條容量為1,費用為讀入的邊

#include#include

#include

#include

#define addedge(x,y,z,f) add_edge(x,y,z,f),add_edge(y,x,-z,0)

using

namespace

std;

const

int inf=1e8+10

;const

int maxn=1001+10

;int

n,m,s,t;

intc[maxn][maxn];

struct

node

edge[maxn];

int head[maxn],num=2

;inline

void add_edge(int x,int y,int z,int

f)int

dis[maxn],vis[maxn],pre[maxn];

bool

spfa()}}

return dis[t]

}int

f()void

mcmf()

intbelong[maxn][maxn];

intmain()

}for(int j=1;j<=q;j++)

}for(int i=1;i<=a;i++)

for(int i=1;i<=b;i++)

mcmf();

return0;

}

P4012 深海機械人問題

深海資源考察探險隊的潛艇將到達深海的海底進行科學考察。潛艇內有多個深海機械人。潛艇到達深海海底後,深海機械人將離開潛艇向預定目標移動。深海機械人在移動中還必須沿途採集海底生物標本。沿途生物標本由最先遇到它的深海機械人完成採集。每條預定路徑上的生物標本的價值是已知的,而且生物標本只能被採集一次。本題限...

luogu P4012 深海機械人問題

費用流問題,每個樣本選一次,就連一條capacity為1,權為給定的值,因為可以重複走,再連capacity為無窮,權為0的邊,再一次連線給定的出點和匯點即可 includeusing namespace std define lowbit x x x typedef long long ll co...

LuoguP4012 深海機械人問題 費用流

深海資源考察探險隊的潛艇將到達深海的海底進行科學考察。潛艇內有多個深海機械人。潛艇到達深海海底後,深海機械人將離開潛艇向預定目標移動。深海機械人在移動中還必須沿途採集海底生物標本。沿途生物標本由最先遇到它的深海機械人完成採集。每條預定路徑上的生物標本的價值是已知的,而且生物標本只能被採集一次。本題限...