当前位置: 首页 > news >正文

网站优化 英文国内最新十大新闻

网站优化 英文,国内最新十大新闻,有人做网赌网站吗,好男人hd免费观看题目 题目链接 题解 很典型的最小割模型问题#xff0c;我们知道颜色不确定的点最终要么是白色#xff0c;要么是黑色#xff0c;是两种对立的状态#xff0c;我们联想到了最小割。 最小割是割掉权值和最小的边集#xff0c;使得图中的点分成两个点集#xff0c;一个…题目 题目链接 题解 很典型的最小割模型问题我们知道颜色不确定的点最终要么是白色要么是黑色是两种对立的状态我们联想到了最小割。 最小割是割掉权值和最小的边集使得图中的点分成两个点集一个包含sss点,一个包含t" role="presentation" style="position: relative;">ttt点与这道题的要求非常相似。 我们构建3组点。 一组是确定为白色的点与sss相连,流量为inf" role="presentation" style="position: relative;">infinfinf。 一组是确定为黑色的点与ttt相连,流量为inf" role="presentation" style="position: relative;">infinfinf。 一组是颜色不确定的点如果该点与白的的点之间有边那么就在该点与白色的点之间连接一条对应流量的边。如果与黑色的点有边相连类似。 这样的话跑一遍最小割/最大流被割掉的边就代表权值不能被取到的由于割是最小的所以剩下的是最大的。 代码 #include iostream #include cstdio #include vector #include algorithm using namespace std; const int inf 1e9; const int maxm 300001; const int maxn 1001; int node,src,dest,edge; int ver[maxm],flow[maxm],nxt[maxm]; int head[maxn],work[maxn],dis[maxn],q[maxn]; void prepare(int _node,int _src,int _dest) {node_node,src_src,dest_dest;for(int i0; inode; i)head[i]-1;edge0; } void add_edge(int u,int v,int c) {ver[edge]v,flow[edge]c,nxt[edge]head[u],head[u]edge;ver[edge]u,flow[edge]0,nxt[edge]head[v],head[v]edge; } bool Dinic_bfs() {int i,u,v,l,r0;for(i0; inode; i)dis[i]-1;dis[q[r]src]0;for(l0; lr; l)for(ihead[uq[l]]; i0; inxt[i])if(flow[i]dis[vver[i]]0){dis[q[r]v]dis[u]1;if(vdest)return 1;}return 0; } int Dinic_dfs(int u,int exp) {if(udest)return exp;for(int iwork[u],v,tmp; i0; inxt[i])if(flow[i]dis[vver[i]]dis[u]1(tmpDinic_dfs(v,min(exp,flow[i])))0){flow[i]-tmp;flow[i^1]tmp;return tmp;}return 0; } int Dinic_flow() {int i,ret0,delta;while(Dinic_bfs()){for(i0; inode; i)work[i]head[i];while(deltaDinic_dfs(src,inf))retdelta;}return ret; } typedef pairint,int pii; vectorpii vec[100007]; int n,k,p,qq,tmp; int kind[205]; int pkind[100007]; int G[205][205]; int ans; int mxcut; #define pr(x) cout#x:xendl void dfs(int u,int fa){for(pii p : vec[u]){int v p.first,c p.second;int k1 kind[pkind[u]];int k2 kind[pkind[v]];if(u v) goto s;if(pkind[u] pkind[v]) {ans c;goto s;}if(k1 k2){if(k1 k2) ans c;}if(!k1 !k2){add_edge(pkind[u],pkind[v],c),mxcut c;}if(k1 !k2){if(k1 -1) add_edge(pkind[u],pkind[v],c),mxcut c;if(k1 1 ) add_edge(pkind[v],pkind[u],c),mxcut c;}if(!k1 k2){if(k2 -1) add_edge(pkind[v],pkind[u],c),mxcut c;if(k2 1 ) add_edge(pkind[u],pkind[v],c),mxcut c;} s: if(v ! fa) dfs(v,u);} } int lp,rp; int main(){scanf(%d %d %d %d,n,k,p,qq);for(int i 1;i p;i) scanf(%d,tmp),kind[tmp] - 1;for(int i 1;i qq;i) scanf(%d,tmp),kind[tmp] 1;for(int i 1;i n;i) scanf(%d,tmp),pkind[i] tmp;prepare(k2,0,k1);for(int i 1;i k;i) {if(kind[i] -1) add_edge(0,i,inf);if(kind[i] 1 ) add_edge(i,k1,inf);}for(int i 1;i n;i){int u,v,c;scanf(%d%d%d,u,v,c);vec[u].push_back(make_pair(v,c));vec[v].push_back(make_pair(u,c));}dfs(1,0);ans mxcut - Dinic_flow();coutansendl; }
http://wiki.neutronadmin.com/news/463234/

相关文章:

  • 济南网站备案程序零基础学seo难吗
  • 网站模板制作工具网站建设价格山东济南兴田德润什么活动
  • 卖衣服的网站排名wordpress文章图片显示错误
  • 外贸商业网站建设亚马逊aws wordpress
  • 创建销售网站多少钱制作app的教程
  • 河南推广网站学网站建设多少学费
  • aspnet东莞网站建设价格邵阳相亲网站
  • 高新网站建设哪家好seo如何优化网站推广
  • 站长工具ip查询郑州教育信息网
  • 呼和浩特可以做网站的公司网络管理系统的组成
  • 永康企业网站建设鞍山玉佛苑导游词
  • 显示WordPress页面打开时长上海谷歌优化
  • 合肥网站建设讯息我40岁自学cad找到工作了
  • 群晖做自己的电影网站wordpress多媒体
  • 网站开发报价技巧长沙免费旅游景点大全
  • php免费网站建设影响搜索排名的核心因素有哪些?
  • 图书馆新生专栏网站建设电商购物网站
  • 空投糖果网站开发wordpress 多条件筛选
  • 三门峡建设网站2022年今天新闻联播
  • 彩票网站有人做吗宝塔如何添加ip域名做网站
  • 网站公告栏设计wordpress安装后设置密码
  • 深圳ww门户网站优化方案
  • 珠海工程建设信息网站怎么去推广自己的店铺
  • 外贸流程中有哪些主体单位wordpress数据库优化插件
  • 江西电信网站备案链交换
  • 苏州网站建设 网络推广公司交通建设集团蓝商分公司网站
  • 有没有兼职做设计的网站吗成都建好的网站出租
  • 云溪网络建站宝盒网址注册局
  • 学校网站建设工作总结淘宝客网站怎样做seo
  • 新网站怎么让百度收录seo优化在线