ฉันคิดว่าต่อไปนี้เป็นอัลกอริทึมเวลาพหุนามตามกระแสสูงสุด ปล่อยG ( V, E) , ข, ค เป็นอินพุต
- สร้างกราฟสองฝ่ายกำกับ H( L , R , F) กับ L และ R เป็นพาร์ทิชันซ้ายและขวาและ Fเป็นขอบกำกับจาก L ถึง R.
- ปล่อย |V| =n. มีn จุดยอดใน L และ n จุดยอดใน R.
- แต่ละจุดสุดยอด v ∈ V มี "สำเนา" ใน L (พูด โวลต์ล.) และสำเนา R (พูด โวลต์R)
- ถ้า ( u , v ) ∈ E เพิ่มขอบกำกับจาก ยูล. ถึง โวลต์R. ขอบแต่ละอันนั้นมีความจุ 1
- เพิ่มโหนด "ต้นทาง" s และเพิ่มขอบกำกับจาก s ไปยังแต่ละจุดสุดยอดใน L. ขอบแต่ละอันนั้นมีความจุข.
- เพิ่มโหนด "sink" เสื้อ และเพิ่มขอบกำกับจากแต่ละจุดยอด R ถึง เสื้อ. ขอบแต่ละอันนั้นมีความจุค.
- ค้นหาการไหลสูงสุดจาก s ถึง เสื้อ.
กราฟที่กำหนด G มีทางออกถ้าและถ้าสูงสุดไหลคำนวณเหนือขอบทุกจาก s ถึง Lคือการไหลของทุกขอบจาก s ถึง L เท่ากับ ข.