咱也不敢寫總結只能說小結因為到現在會的還是太少
也不說自己弱了因為即使是真的說了又有什麼用呢
還是老老實實自閉吧
《士兵占領》:最大流的板子,但是一開始想偏了。正解是用最大流求出並集,然後用全集減掉。
《緊急疏散》:需要考慮的問題是每個門在一秒只能出乙個人,用到乙個拆點的思想。
按照時間拆點,然後在各個空地建出下乙個時間的自己和周圍的點連邊。
感覺最小割要比最大流多一些。。。
《狼抓兔子》:網路流是用來寫暴力的但是可a。。
《最大獲利》:算是乙個常見模型,大概長這個樣子
圖是偷的所以看起來特別大23333
這樣建圖感性理解一下大概是可以解決問題的。
《人員僱傭》:大概題意是「兩個都不割減2e,割乙個減3e」。
乍一看感覺特別不可做,但是我們考慮在兩點之間連邊來表示兩點之間關係,大概長這樣。
然後我們就解決了這類問題。
《切糕》:這道題是我在沒讀清題的時候就看到了類似的題解,雖然題解沒看仔細,但是記住了圖,然後在考場上推出來的。
既然有高度限制,我們就考慮通過建邊來表示這個限制。
每個點只需要建一條邊,因為會有乙個類似「相互制約」的東西。
《線性代數》:化簡一下柿子就能找到建圖方法,還可以。
《千鈞一髮》:根據題目可以發現,奇和奇以及偶和偶之間不會連邊,於是二分圖。
《壽司餐廳》:肛道理這個應該開個新的叫最大權閉合子圖,但是我太懶了。
按照限制要求(x-1,y),(y-1,x)向(x,y)連邊,然後對於新的mx2的貢獻新建點即可。
《晨跑》:費用流的板子。
《修車》:每個人做出的貢獻是 自己前面修車總時間+自己修車所用時間
轉換一下問題,變成了 當自己為倒數第i個修車時,作出的貢獻為i*自己修車所用時間
然後按照時間拆點,邊權直接為時間*邊權即可
《美食節》:因為點數過多而導致時間複雜度會偽。
每次只會增廣乙個廚師的一道菜,於是每用完乙個廚師加乙個點。
寫的時候不小心出了負環,原因是新加入的邊的邊權比之前流過的邊權小。
但是上文所說的做法可以完美避開這一問題。
《數字配對》:題目中給出的限制條件有時更是建圖的特殊性質。
考慮分層,因為每乙個數字只能參與一次配對,所以要將配對和被配對和起來考慮,不然很難做。
根據題目發現可以按照質因子個數的奇偶分層,這樣就可以把配對和被配對合起來。
《80人環遊世界》&《星際競速》:本來是最小費用最大流的題目,但是用上下界可水
《支線劇情》:大概上下界可行流裸題?
《清理雪道》&《旅行時的困惑》:上下界最小流。統計答案是用建出的s-->t的流量減去t-->s的最大流。還需要再理解一下。
《志願者招募》:建圖大概是這樣。此時s=1,t=4。
我聽說了乙個叫作「一面對多面」,大概就是類似乙個區間加,然後見圖用到了迴圈流的思想。
解釋一下,按照時間將每一天連起來,邊權為正常上下界。
為了保證正常流量,於是可以從t+1連一條到s的邊,讓這1流量流完區間。
《矩陣》:二分答案驗證上下界可行流。
《海拔》:觀察題目可以得到性質是高度只有0和1,根據原圖搞最小割是90分。
發現可以轉換成對偶圖的形式,運用對偶圖性質求解,即最小割==最短路。
對偶圖大概是將各個邊將平面分成的區域作為點,然後按照圖連邊跑最短路。
說實在的到現在對偶圖幾個比較好的性質也沒能搞清楚。
做了這個專題,覺得差距好像稍微有點大,於是就開始自閉了。
網路流小結
注 因為風骨傲天習慣用 dfs dinic 所以不會用到 ek 等其他形式,而預流推進等較高階的,等我學了再說吧 事實上,這一部分只會包括最大流和最小費用最大流的略解,後面會補上帶上下界的。最大流 inline bool bfs return d t 1 0 inline int dfs int p...
網路流小結
bzoj 1001 狼抓兔子 最小割 優化做的足的dinic能過 平面圖轉對偶圖跑最短路 還沒寫。bzoj 1877 晨跑 拆點 限制每個點跑一次吧每個點拆成兩個中間加一條權值為1的邊 bzoj 1066 蜥蜴 裸最大流 bzoj 1927 星際競速 建立附加源點流量為能夠瞬間移動的次數,每個點拆點...
題目小結 網路流
東拼拼,西湊湊,不就又水出一篇部落格嗎?例 1.text 首先可以想到在 1,n 列舉匯點,檢驗最大流是否為企鵝總數。每個點初始的企鵝數可以由 s rightarrow i 的邊表示,那跳出的企鵝呢?因為跳到哪個冰塊是未知的,所以不妨將 i 拆成兩個點 在入點與出點之間連邊權為跳出企鵝數的邊。例 2...