• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Eric.cpp
博客园 | 首页 | 新随笔 | 新文章 | 联系 | 订阅 订阅 | 管理

2012年5月16日

POJ-2112(网络流)
摘要: 题意:有K台挤奶机(编号1~K),C头奶牛(编号K+1~K+C),给出各点之间距离。现在要让C头奶牛到挤奶机去挤奶,每台挤奶机只能处理M头奶牛,求使所走路程最远的奶牛的路程最短的方案。构图:先Floyd求所有点对之间最短路,二分最短长度,若奶牛与挤奶机之间的距离大于mid则不连边,否则连容量为1的边。源向挤奶机连容量M的边,奶牛向汇连容量1的边,用最大流判可行性。View Code #include <iostream>#include <stdio.h>#include <string.h>using namespace std;#define V 300 阅读全文
posted @ 2012-05-16 22:10 Eric.cpp 阅读(228) 评论(0) 推荐(0)
 
POJ-1698(网络流)
摘要: 题意:有N部电影,分别可以在一个星期的几天拍摄,并可以拍W个星期,Alice可以有D个星期拍这部电影,一天只能拍一部电影。问Alice能否拍完所有电影。构图:把日程表上所有的点弄出来,如果电影能在这天拍摄,则从电影I向这天连容量为1的边。源点向每一部电影连容量为D的边。每一天向汇点连一条容量1的边。做最大流,若等于sum{d[i]}则可以,否则不可以。View Code Source CodeProblem: 1698 User: HEU_daoguang Memory: 920K Time: 0MS Language: G++ Result: Accepted Source Code ... 阅读全文
posted @ 2012-05-16 22:05 Eric.cpp 阅读(182) 评论(0) 推荐(0)
 
Dinic(亲笔)
摘要: 今天真有成就感啊。参照"王欣上《浅谈基于分层思想的网络流算法》.doc"亲手实现了一下dinic算法。p<-s;While outdegree(s)>0 u<-p.top; if u!=t if outdegree(u)>0 设(u,v)为层次图中的一条边; p<-v; else 从p和层次图中删除点u, 以及和u连接的所有边; else 增广p(删除了p中的饱和边); 令p.top为p中从s可到达的最后顶点;end whileView Code Source CodeProblem: 1698 User: HEU_daoguang Memor 阅读全文
posted @ 2012-05-16 21:47 Eric.cpp 阅读(260) 评论(0) 推荐(0)
 
 

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3