来一篇 \(Pascal\)。

很显然分层之后就可以搞最大流了。

如果蒟蒻没有想错的话是这样子的 :

之前把 \(matrix[i,-1]\) 搞错了改了 \(1 h\)。把 \(ISAP\) 换成 \(Dinic\) 又换成 \(ISAP\) 以及清空各种优化数组和各种细节用了 \(\frac{1}{2} h\)。判的是大于等于而不是大于且忘记 \(-1\) 改了 \(1h\)(我\(zz\)了)。最后判有没有输出才拿了 \(100\) 分。以及一开始写用了 \(\frac{1}{2} h\)。

Uses math;varvalue,reach,next:array[-1..2100000] of longint;gap,dis,cnt:array[-1..810000] of longint;matrix:array[-1..210,-1..140] of longint;capacity:array[-1..210] of longint;n,m,i,j,l,r,nn,tmp,tot,now,node,time,need,sink,source,maxflow:longint;procedure add(l,r,sum:longint);
begininc(tot); reach[tot]:=r; value[tot]:=sum; next[tot]:=cnt[l]; cnt[l]:=tot;inc(tot); reach[tot]:=l; value[tot]:=8-8; next[tot]:=cnt[r]; cnt[r]:=tot;
end;function Dfs(now,flow:longint):longint;
var i,k,mindis,ret:longint;
beginmindis:=node-1; ret:=flow;if now=sink then exit(flow);i:=cnt[now];while i<>-1 dobeginif value[i]>0 thenbeginif dis[now]=dis[reach[i]]+1 thenbegink:=Dfs(reach[i],min(ret,value[i]));dec(value[i],k);inc(value[i xor 1],k);dec(ret,k);if dis[source]>=node then exit(flow-ret);if ret=0 then break;end;mindis:=min(mindis,dis[reach[i]]);end;i:=next[i];end;if ret=flow thenbegindec(gap[dis[now]]);if gap[dis[now]]=0 then dis[source]:=node;dis[now]:=mindis+1;inc(gap[dis[now]]);end;exit(flow-ret);
end;beginfilldword(cnt,sizeof(cnt) div 4,maxlongint*2+1); tot:=-1;read(n,m,need); source:=0; sink:=9999; inc(n,2);for i:=1 to m dobeginread(capacity[i],matrix[i,-1]);for j:=0 to matrix[i,-1]-1 do begin read(matrix[i,j]); inc(matrix[i,j],2); end;end;while tmp<666 dobeginadd(time*n+1,sink,maxlongint);add(source,time*n+2,maxlongint);if time>0 thenbeginfor i:=1 to n do add((time-1)*n+i,time*n+i,maxlongint);for i:=1 to m dobeginl:=matrix[i,(time-1) mod matrix[i,-1]];r:=matrix[i,time mod matrix[i,-1]];add((time-1)*n+l,time*n+r,capacity[i]);end;end;fillchar(gap,sizeof(gap),0);fillchar(dis,sizeof(dis),0);node:=sink+1; gap[source]:=node; maxflow:=0;while dis[source]<node do inc(maxflow,Dfs(source,maxlongint));inc(tmp,maxflow); inc(time);if tmp>=need then break;end;if time>=666 then writeln(0) elsewriteln(time-1);
end.

转载于:https://www.cnblogs.com/FibonacciHeap/articles/10322010.html

P2754 [CTSC1999] 家园相关推荐

  1. P2754 [CTSC1999]家园 / 星际转移问题(网络流)

    P2754 [CTSC1999]家园 / 星际转移问题 经典问题,利用分层图来跑网络流.

  2. P2754 [CTSC1999]家园

    \(\color{#0066ff}{题目描述}\) 由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了.于是在月球上建立了新的绿地,以便在需要时移民.令人意想不到的是,2 ...

  3. 洛谷 - P2754 [CTSC1999]家园(最大流+并查集)

    题目链接:点击查看 题目大意:现在有k个人类需要从地球上转移到月球上去,现在有n个宇宙中转站,以及m个飞船周期性运载,每个飞船的载客都有一定的上限,但中转站的载客没有上限,现在给出每个飞船的路线,问最 ...

  4. 网络流24题-[CTSC1999]家园

    [CTSC1999]家园 时空限制1000ms / 128MB 题目背景 none! 题目描述 由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了.于是在月球上建立了新的 ...

  5. [CTSC1999]家园 - 网络流24题

    [CTSC1999]家园           时空限制1000ms / 128MB 题目描述 由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了.于是在月球上建立了新的绿 ...

  6. 洛谷P2754:[CTSC1999]家园 / 星际转移问题(网络流)

    解析 容易想到对每个时间的空间站都建一个点. 然后发现循环问题很难搞. 然后我就一直想从 lcm 下文章,结果 lcm 可以到3e5,于是就寄了- qwq 注意到本题的数据范围极小! 那个3e5云云是 ...

  7. LuoguP2754 [CTSC1999]家园(分层图,最大流)

    题目背景 none! 题目描述 由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了.于是在月球上建立了新的绿地,以便在需要时移民.令人意想不到的是,2177 年冬由于未知 ...

  8. 【网络流24题】[CTSC1999]家园

    太菜了,一个地方打错调试3个小时qwq 新技巧get 分层图网络流 /* @Date : 2019-07-18 09:27:30 @Author : Adscn (adscn@qq.com) @Lin ...

  9. 做题记录 To 2019.2.13

    2019-01-18 4543: [POI2014]Hotel加强版:长链剖分+树形dp. 3653: 谈笑风生:dfs序+主席树. POJ 3678 Katu Puzzle:2-sat问题,给n个变 ...

最新文章

  1. Coding and Paper Letter(二十)
  2. 三、Java基础工具(1)_常用类——随机数
  3. 面试:知道 CopyOnWriteArrayList 吗?
  4. TFS2008 基本安装
  5. 实例比较虚幻引擎4与光线追踪渲染
  6. Chrome 如何让光标快速定位到地址栏-进行搜索
  7. 使用Spring Rest和Spring Data JPA和H2以及Spring Boot示例的Restful API
  8. 带你认识三种kafka消息发送模式
  9. 工业机器人用铸铁牌号_锻钢牌号表示方法你了解么?
  10. paip.c++ 开发 api 手册文档总结
  11. 【接口时序】8、DDR3驱动原理与FPGA实现(一、DDR的基本原理)
  12. 汉诺塔递归算法(Python编程)
  13. 阿里乾坤qiankun
  14. 试述HDFS中的名称节点和数据节点的具体功能
  15. Ubuntu下搭建SVN与Apache权限控制
  16. 部门换届推文文字_这是一篇迟迟不想到来的推文
  17. 有的QQ临时会话要求加好友
  18. 数据科学家技能树(中文翻译版)
  19. 雕刻效果的实现【OpenCV+QT】
  20. 费率与利率的差别_费率是什么(利率和费率有啥区别?)

热门文章

  1. python定义一个求和函数_Python定义函数实现累计求和操作
  2. 会计学02.会计要素
  3. 性能调优3:硬盘IO性能
  4. 创意大会与当地学校持续游戏
  5. 中文女和程序员的爱情奇遇(转自博客园)
  6. 安全邮箱怎么注册?邮箱地址是什么?快速了解tomvip邮箱信息
  7. Mautic使用手册翻译8: 渠道 Channels
  8. 惠普w ndOws8的配置是多少,莫博士:旧电脑升级Win8是自己找罪受
  9. jama包及求解二元一次方程组
  10. 82_21_09.16