摘要:
努力刷网络流找感觉ing…… 这其实是一个费用流,拆点,流量为1,费用为val。 求其最大费用流,可以转化为边权相反,求最小费用流的相反数。 看代码: #include<bits/stdc++.h> using namespace std; #define inf 1e9 int val[100][ 阅读全文
摘要:
个人认为思维难度比较大。 看到这题,我们要想办法将其转化为最小割。 考虑到割x,y,z都能完成任务,我们将其并联,割掉其中任意一边都行。 因为割得是权,于是以权为点,而不是以节点为点。 并且要拆点。 超级源点向x连边,x向y的入口连边,y的入口向出口连边,y的出口向z连边,z向超级汇点连边。 看代码 阅读全文
摘要:
发现好像只记一行没什么太大的用了。怎么办…… 一行不行记两行呗!m=10的情况也只有60种可行方案,空间大大的有。 注意不是累加是取max…… 看代码: #include<bits/stdc++.h> using namespace std; int f[105][65][65]; int can[ 阅读全文
摘要:
传说这种题叫什么旅行商问题? 这题卡记搜和暴搜,注意一下…… #include<bits/stdc++.h> using namespace std; const int maxn=20; int n,vis[maxn]; double x[maxn],y[maxn],ans,dist[maxn][ 阅读全文