多校训练就这么华丽丽的到了 ,于是乎各种华丽丽的被虐也開始了。
这是多校的1002; 最小费用最大流。
题目大意:
有n*m个方格,每一个方格都一个的十进制一位的数。你能够操作K次。
对于每一次操作,你能够选择一个出发点向下或向右Jump。跳的花费是|x1-x2|+|y1-y2|-1的能量 。假设你跳的这两个位置上数字同样,那么你就会获得数字表示的能量值。
对于每一次操作,你能够这样跳随意次 ,可是每一个位置仅仅能经过一次在这K次操作中。
初始能量值是0,当操作完毕后,假设n*m个方格没有都经过过,输出“-1”,否则输出能够得到的最大能量值。
解题思路:
建立一个流量网络,一个二部图。X部分向Y部分链接的情况表示能够从一个点跳到还有一个点,超级源点和超级汇点分别同X部分的点和Y部分的点链接。在X部分中多加一个点它与源点的流量是K费用是0,与Y部分全部点链接流量是1费用是0。这表示操作K次。
以下是代码:
#include #include #include #include #include #include #include #include