P2774 方格取数问题
原题 P2774 方格取数问题
题目描述
有一个 m 行 n 列的方格图,每个方格中都有一个正整数。现要从方格中取数,使任意两个数所在方格没有公共边,且取出的数的总和最大,请求出最大的和。
解法:
对图黑白染色。
加边:
①相邻黑白点 连边 边全inf
②S -> 白点 边权为cost
③黑点 -> T 边权为cost
答案为总权值减去 - 最小割。
个人理解
割 能够保证是当删除割点时,不存在 S -> T 的流量,也就是说不存在冲突。
由于 ans = 总权值 - 割 。
所以当割最下时,就是答案最大。
理解++
当你想获得一个点价值的时候。只能舍弃他周围所有点的价值,对应图中的操作就是割去4条边。