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

白银市建设局网站首页怎么做网站互换链接

白银市建设局网站首页,怎么做网站互换链接,企业宣传片拍摄脚本,牛商网做网站要多少钱题意#xff1a;给你无向图#xff0c;给定一条边#xff0c;求至少在原图中删去多少边才能使它同时在某个最大生成树和某个最小生成树中。 解#xff1a; 假装我们把边排序了#xff0c;然后把所有边权小于给定边的边都加进去了。 那么我们要删的就是s到t的一个割。 最大…题意给你无向图给定一条边求至少在原图中删去多少边才能使它同时在某个最大生成树和某个最小生成树中。 解 假装我们把边排序了然后把所有边权小于给定边的边都加进去了。 那么我们要删的就是s到t的一个割。 最大同理。 然后我们做两遍最小割即可。 注意边权与给定边相等的边直接忽略。 1 #include cstdio2 #include algorithm3 #include queue4 #include cstring5 6 const int N 20010, M 1000010, INF 0x3f3f3f3f;7 const int dx[] {1, 0, -1, 0};8 const int dy[] {0, 1, 0, -1};9 10 struct Edge {11 int nex, v, c;12 }edge[M 1]; int top 1;13 14 struct Eg {15 int u, v, len;16 inline bool operator (const Eg w) const {17 return len w.len;18 }19 }eg[M];20 21 int e[N], d[N];22 std::queueint Q;23 24 inline void add(int x, int y, int z) {25 top;26 edge[top].v y;27 edge[top].c z;28 edge[top].nex e[x];29 e[x] top;30 31 top;32 edge[top].v x;33 edge[top].c z;34 edge[top].nex e[y];35 e[y] top;36 return;37 }38 39 inline bool BFS(int s, int t) {40 memset(d, 0, sizeof(d));41 d[s] 1;42 Q.push(s);43 while(!Q.empty()) {44 int x Q.front();45 Q.pop();46 for(int i e[x]; i; i edge[i].nex) {47 int y edge[i].v;48 if(!edge[i].c || d[y]) {49 continue;50 }51 d[y] d[x] 1;52 Q.push(y);53 }54 }55 return d[t];56 }57 58 int DFS(int x, int t, int maxF) {59 if(x t) {60 return maxF;61 }62 int ans 0;63 for(int i e[x]; i; i edge[i].nex) {64 int y edge[i].v;65 if(!edge[i].c || d[x] 1 ! d[y]) {66 continue;67 }68 int temp DFS(y, t, std::min(edge[i].c, maxF - ans));69 if(!temp) {70 d[y] INF;71 }72 ans temp;73 edge[i].c - temp;74 edge[i ^ 1].c temp;75 if(ans maxF) {76 break;77 }78 }79 return ans;80 }81 82 inline int solve(int s, int t) {83 int ans 0;84 while(BFS(s, t)) {85 ans DFS(s, t, INF);86 }87 return ans;88 }89 90 int main() {91 int n, m, L, s, t;92 scanf(%d%d, n, m);93 for(int i 1; i m; i) {94 scanf(%d%d%d, eg[i].u, eg[i].v, eg[i].len);95 }96 scanf(%d%d%d, s, t, L);97 std::sort(eg 1, eg m 1);98 int i;99 for(i 1; i m; i) { 100 if(eg[i].len L) { 101 break; 102 } 103 add(eg[i].u, eg[i].v, 1); 104 } 105 int ans solve(s, t); 106 memset(e, 0, sizeof(e)); 107 top 1; 108 for(; i m; i) { 109 if(eg[i].len L) { 110 continue; 111 } 112 add(eg[i].u, eg[i].v, 1); 113 } 114 printf(%d, ans solve(s, t)); 115 return 0; 116 } AC代码 一开始我想把两遍最小割合成一遍后来发现不行。 比如这个样例 3 2 1 2 1 2 3 3 1 3 2 最小删边是0但是一次最小割是1。 思考会不会有这种情况你删掉一个比给定边小的边使得最大生成树无法达成(图不连通) 应该不会因为你两次割的互不影响且都成环。转载于:https://www.cnblogs.com/huyufeifei/p/10110881.html
http://www.yutouwan.com/news/454116/

相关文章:

  • 上杭网站制作新型网络营销方式
  • 广州网站制作联系方式杨凌企业网站建设
  • 用rp怎么做网站原型哈尔滨网站建设价格
  • 建设一个企业网站荥阳网
  • wordpress迁站到阿里云h5做招聘网站可以吗
  • 阜阳网站建设专业机构自适应网站做推广
  • 视频作品投票网站如何做考研比较厉害的培训机构
  • 建设网站 目标现在互联网创业可以做哪些项目
  • 绿色网站模版废旧物品手工制作图片
  • 手机网站首页经典案例中国建筑人才网是什么网站
  • 中国新农村建设网站投稿北京网页设计好的公司
  • 陶瓷刀具网站策划书手机电视直播网站大全
  • 外国网站开放的浏览器wordpress 百万
  • 襄阳微网站建设做网站用什么样的电脑
  • 虚拟机主机网站建设的几个步骤网站制作哪里做得好
  • php模板建站私家网站ip地址大全
  • 广州加盟网站建设上海网站开发团队
  • 高端网站设计欣赏wordpress 添加网页
  • 网站备案怎么才能快速注册公司需要交多少税
  • 国外网站建站简单网站首页
  • 网站开发用什么语言专业建站公司品牌
  • 盘锦门户网站制作手机网站怎么在电脑上打开
  • 影视网站cpa 如何做韩国手表网站
  • 江北网站建设价格纳雍网站建设公司
  • 如何把网站上线ui设计优秀案例
  • 樟木头镇网站仿做百度云加速 wordpress
  • 巴彦淖尔市 网站建设服装搭配网站建设策划书
  • 最专业的网站建设组织地区网站建设服务周到
  • 做淘宝浏览单的网站平台公司拿地
  • 美妆网站建设环境分析网站代管理