CJOJ 為了博多

2022-05-21 07:16:35 字數 1264 閱讀 2498

做了個噩夢,夢見我的 n 把刀到60級會二次變身,變成乙個對推6圖有xi點貢獻,刷大阪城有yi點貢獻的刀,於是要把刀分成兩隊一隊刷大阪城另一隊推6圖 。 

但是有m對兄弟刀在同一隊會有特殊的buff加成,加成值為wi,問怎樣分隊收益最大,最大值是多少。

第一行兩個整數n(刀的數目)(0<=n<=20000),m(兄弟刀的對數)(0<=m<=200000) 

接下來n行,每行兩個整數xi,yi,分別表示第i把刀對推6圖的貢獻xi和對刷大阪城的貢獻yi。 

接下來m行,每行三個整數u,v,wi,分別表示第u把刀和第v把刀是兄弟刀,在一隊能產生wi的buff值。

一行乙個數字,表示最大收益

3 1 

1 10 

2 10 

10 3 

2 3 1000

題解:顯然一道最小割的題目,最好收入的一般套路就是sum減去最小割,然而最重要的是想清楚怎麼建圖,我們可以思考s為推6圖,t為大阪城,將每個節點和s,t連對應權值的邊,如果i和j之間有對應關係時就連一條雙向邊,這個圖就可以滿足題目的所以關係。選t就割和s的連邊,選s就割和t的連邊,如果同時刷的話中間的權顯然就都得到了,如果分開刷的話,就需要把中間的也割掉,這樣就形成割了。

#include#include

#include

#include

#include

#include

const

int maxn=2000100

;using

namespace

std;

struct

edgea[maxn];

int dis[maxn],n,m,sum=0,num=1

;int

s,t;

queue

q;void addedge(int

from,int to,int

cap)

void link(int x,int y,int

cap)

bool

bfs()}}

return0;

} int dfs(int now,int

flow)

}return

tag;}

intdinic()

intmain()

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

printf("%d

",sum-dinic());

return0;

}

**:

財富自由之路 博多 舍費爾

博多.舍費爾 德國理財大師,1960生於德國。歐洲知名億萬富翁 核心內容 窮人和富人的差距主要體現在對待財富的觀念和原則上 改變方式 明確定義 明確數字,用筆記錄下來,轉化為畫面。在潛意識下是乙個具體的場景,場景就像是地圖,指引作用。設定大目標 看清努力方向。小目標會被小問題擋住視野。財富大目標方向...

關與inflate的雜談為了解決我上個部落格的問題

先說 activity 的setcontextview view view 追蹤原始碼最後可以看到是呼叫了 phonewindow 物件的setcontextview view view 可以看到不管設定的view是否有parent,都會重新設定乙個matchparent 的 layoutparam...

《小狗錢錢2》 博多 舍費爾

第一本書講的是理財 第二本書講的是做人,這樣才是乙個完整的人不僅僅是修身還要養性,小狗錢錢 一和二讓我認識到理財就是理人生,把自己的一生價值最大化,錢不是萬能的,但能幫助我們更加自由的做自己想做的事,而想做的事就是實現這七大準則 1.友好親和2.勇於承擔3.善待他人4.幫助給予5.感恩之心6.勤學不...