闭合子图:\(\forall x\in V,(x,y),y\in V\),也就是说对于点集的每个点,它的出边所指向的点也在该点集内。
实际问题的意义大多 \((x,y)\) 指倘若 \(x\) 选了,那么 \(y\) 也选了。
考虑对于每个点赋权,有正有负,以及若干限制,选了 x 就一定要选 y,要求最后选的利益最大。
考虑正权要选那么可能会需要选到若干负权的,否则干脆都不选。
对于正权点的,连 \(S\to i\),容量为 \(a_i\),对于负权的,连 \(i\to T\) 容量为 \(-a_i\),限制连容量 \(\infty\),那么跑最小割的话的答案就是舍弃掉一些权值,再用所有正权和减去即可。
证明:倘若正权与 S 的边被割了,那么说明最后没有选择正权,则与其相连的负权边的出边也一定不会被割!倘若正权与 S 的边没被割,那么相连的负权到 T 的边一定都被割,即该正权点所选需要满足的限制都满足了,这时候这一部分会减去(负贡献)
标签:那么,正权点,最大,正权,子图,闭合,出边,负权 来源: https://www.cnblogs.com/xugangfan/p/16169239.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。