AC的故事大結局山寨版(下)

2022-08-14 08:18:11 字數 2547 閱讀 9606

timelimit:2000ms  memorylimit:128mb

64-bit integer io format:%lld

problem description

小a算出幕後**的人員是如此之多,知道在我們華夏,手段通天者必然身居高位,僅僅靠他們的力量恐怕難以和他們對抗。

於是小a和小c找到了以前認識的檢察官侯亮平,告訴侯亮平事情的始末後,他們立馬通知趙東來安排了人手準備逮捕嫌疑人祁同偉(這麼大的事居然沒有事先向上級匯報就擅自行動)。

現在警廳裡只有p<=100個警察,f<=100輛警車和c<=100把**,每輛車和每把**都有自己的特點,每個警察只會用其中的一些警車和**。

每輛警車只坐一名警察(不知道為何要這麼浪費資源,可能市局比較有錢),每位警察必須帶上自己熟練的**才能駕車出擊。

為了打敗幕後**祁同偉,小a合理安排後派出了最多的人手,相信你也一定知道派出了多少警察。最終成功逮捕了嫌疑人祁同偉。

從此小a和小c過上了幸福快樂的日子。可喜可賀,可喜可賀。

input

先輸入乙個整數t(<=100)表示有多少組資料

每組輸入3個整數p,f,c,(3個數都不超過100)分別表示警察人數,警車數量和**數量。

接著第i行表示第i個警察的能力(共p行)。該行先輸入兩個整數x,y表示該警察會駕駛x輛汽車和y把**,之後有x個整數表示警車的編號和y個整數表示**的編號。

(警車編號:1~f,**編號:1~c)

output

每組輸出乙個整數,代表能帶上**駕車出擊的警察最多有多少個

sampleinput

1

4 3 3

2 2 1 2 3 1

2 2 2 3 1 2

2 2 1 3 1 2

2 1 1 3 3

sampleoutput

3

這題的話有坑點,剛開始寫的時候,是直接如下建圖的

這樣建圖就會出現一種情況,乙個人會被重複使用,

所以這時候就應該這乙個點分成兩個點,用流量為1的邊連線,如果這個人使用了,流量減為0,這樣就不會被重複使用

然後其他的就是標準的最小費用最大流解法了,用乙個源點連線所有起始點,用乙個匯點連線所有結束點,流量cap=1,cost=0,

1 #include2 #include3 #include

4 #include5

using

namespace

std;

6struct

dinic

7 edge[maxm * 4

];19

20 inline void init(int start, int vertex, int ss, int

tt)21

27 sign = 0;28

}29 inline void add_edge(int u, int v, int

flow)

3036

37 inline int

dinic()

3846 max_flow +=dfs(s, inf);47}

48return

max_flow;49}

50bool bfs(int s, int

t)51

63for(int i = first[now]; ~i; i =edge[i].next)

6471}72

}73return0;

74}75int dfs(int now, int

max_flow)

7681

int ans = 0, next_flow = 0;82

for(int &i = cur[now]; ~i; i =edge[i].next)

8395}96

}97if(ans == 0)98

101return

ans;

102}

103104

} dinic;

105106/**

107.init(點編號起點, 點編號終點, 源點, 匯點)

108.add_edge(u, v, w) 加邊

109.dinic() 輸出最大流

110*/

111112

int a[1200],b[2000

];113

intmain()

114139

for(int j=1; j<=y; j++)

140145

}146 printf("

%d\n

",dinic.dinic());

147}

148return0;

149 }

view code

狼的故事17 大結局

雨季總是繁殖的季節,總會在這個時候出現挑戰者。我開始期待,開始期待能有乙隻真正的狼從天邊出現。今年沒有叫我失望。從遠處來了乙隻狼,遠遠的我就認出了它。它的耳朵少了半隻,它就是幾年前被我撕掉了半隻耳朵的那乙個,如今它終於回來了。它的四肢粗壯,身形矯健,它的腳步也很堅定,已經沒有了當初逃離狼群時的那種慌...

多執行緒的那點兒事(之大結局)

01 多執行緒的哪些兒事 優先順序反轉 02 多執行緒的哪些兒事 多核程式設計 03 多執行緒的哪些兒事 多執行緒資料結構 04 多執行緒的哪些兒事 無鎖鏈表 05 多執行緒的哪些兒事 順序鎖 06 多執行緒的哪些兒事 無鎖佇列 07 多執行緒的哪些兒事 多執行緒除錯 08 多執行緒的哪些兒事 避免...

多執行緒的那點兒事(之大結局)

01 多執行緒的哪些兒事 優先順序反轉 02 多執行緒的哪些兒事 多核程式設計 03 多執行緒的哪些兒事 多執行緒資料結構 04 多執行緒的哪些兒事 無鎖鏈表 05 多執行緒的哪些兒事 順序鎖 06 多執行緒的哪些兒事 無鎖佇列 07 多執行緒的哪些兒事 多執行緒除錯 08 多執行緒的哪些兒事 避免...