博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3498 最大流
阅读量:5273 次
发布时间:2019-06-14

本文共 523 字,大约阅读时间需要 1 分钟。

题意:

二维平面上有n个浮冰(用坐标表示浮冰位置),开始时每个浮冰上有一些企鹅,现在企鹅需要聚到某一个浮冰上,因此需要从一个浮冰跳到另一个浮冰上。浮冰比较特殊,每次企鹅跳离该浮冰时,由于反弹作用,浮冰会消融一部分,现在告诉,每块浮冰的坐标(xi,yi),每块浮冰最多可以被企鹅跳的次数(ni),每块浮冰上初始的企鹅数量(mi)以及企鹅可以跳跃的最大距离D。求这些企鹅最后可以在哪些浮冰上汇聚。输出可以汇聚的浮冰序号,下标从0..n-1,如果不能汇聚,输出-1。

 

题解:

枚举汇聚的那块浮冰为T,最大流求解。

关键是怎样限制点的出度数(浮冰会融化!),以前好像谈到过,就是拆点。

拆成2n个点(i和(i+n)对应),若u到v有边,则从u向(v+n)连一条容量1的边,从u向(u+n)连一条容量为INF的边,从S向i(1<=i<=n)连容量为i号冰上的企鹅数目的边。

这样就可以达到限制度的效果了~

 

我又偷懒了,有没有自己打。。。思考最重要!

这位同学的sap好快啊。。ps:其实我同学的dinic跑了400ms

 

转载于:https://www.cnblogs.com/proverbs/archive/2013/01/08/2851954.html

你可能感兴趣的文章
JQ全选反选
查看>>
sql语句中in和exists的区别
查看>>
python-处理文件
查看>>
eclipse6.5 自动注册代码
查看>>
spring配置文件比较全的约束
查看>>
Sqlit--学习教程(附加数据库)
查看>>
9月2日笔记
查看>>
文件拷贝 上传下载 输入流输出流个人小结,仅供自己使用
查看>>
OptimalSolution(2)--二叉树问题(2)BST、BBT、BSBT
查看>>
342.4的幂
查看>>
Anroid 搭建Maven私服(Android Studio)
查看>>
Beta 冲刺 (2/7)
查看>>
PHP开发环境配置系列(三)-项目源码映射
查看>>
腾讯官方教程
查看>>
React跨域问题解决
查看>>
windows系统下删除Apache服务器有两种方法:
查看>>
3.学习Dispatcher
查看>>
iOS 程序插件及功能动态更新思路
查看>>
【appium】appium中的元素定位和基本操作
查看>>
让服务器上的pdf文件在网页中打开
查看>>