• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
dwtfukgv
博客园    首页    新随笔    联系   管理    订阅  订阅
2017年2月19日
UVa 12661 Funny Car Racing (dijkstra)
摘要: 题意:给定一个有向图,每条路有5个整数修饰,u, v, a, b, t,表示起点为u,终点为v,打开时间a,关闭时间为b,通过时间为t,打开关闭是交替进行的, 问你从s到t最短时间是多少。 析:使用dijkstra算法,从每个结点出发,求最短路,并维护时间的最小值,这个可以用优先队列,然后考虑能不能 阅读全文
posted @ 2017-02-19 17:47 dwtfukgv 阅读(148) 评论(0) 推荐(0)
UVa 10214 Trees in a Wood. (数论-欧拉函数)
摘要: 题意:给定一个abs(x) <= a, abs(y) <= b,除了原点之外的整点各有一棵树,可以相互阻挡,求从原点可以看到多少棵树。 析:由于a < b,所以我们可以一列一列的统计,第 x 列可以看到的树的个数就是 0 < y <= b中gcd(x, y) = 1的y的个数。 然后就可以分别统计, 阅读全文
posted @ 2017-02-19 16:28 dwtfukgv 阅读(186) 评论(0) 推荐(0)
UVa 1349 Optimal Bus Route Design (最佳完美匹配)
摘要: 题意:给定一个有向图,让你找出若干个图,使得每个点恰好属于一个圈,并且总的权和最小。 析:每个点都有唯一的一个圈,也就是说每一点都有唯一的后继,那么我们就可以转换成求一个图的最小权的最佳完全匹配,可以用最小费用流来求, 先把每个结点拆成两个点,假设是x,y,然后建立一个源点,向每个点的x连一条容量为 阅读全文
posted @ 2017-02-19 16:08 dwtfukgv 阅读(198) 评论(0) 推荐(0)
UVa 1658 Admiral (最小费用流)
摘要: 题意:给定一个图,求1-n的两条不相交的路线,并且权值和最小。 析:最小费用流,把每个结点都拆成两个点,中间连一条容量为1的边,然后一个作为入点,另一个是出点。最后跑两次最小费用流就行了。 代码如下: 阅读全文
posted @ 2017-02-19 15:46 dwtfukgv 阅读(180) 评论(0) 推荐(0)
UVa 11082 Matrix Decompressing (网络流)
摘要: 题意:给定一个矩阵的每行每列的前缀和,矩阵的元素是1-20,求这个矩阵。 析:一个网络流题,首先先把每个点的数减1,那么元素就成了0-19,这样就是一个普通的网络流了,建立一个源点和汇点,源点向每行连一条边, 汇点向每列连一条边,每个行向每个列连一条容量为19的边,其他的边都是相应的容量。最后跑一次 阅读全文
posted @ 2017-02-19 15:25 dwtfukgv 阅读(158) 评论(0) 推荐(0)
UVa 753 A Plug for UNIX (最大流)
摘要: 题意:给定 n 种插座,m种设备,和k个转换器,问你最少有几台设备不能匹配。 析:一个很裸的网络流,直接上模板就行,建立一个源点s和汇点t,源点和每个设备连一条边,每个插座和汇点连一条边,然后再连转换器, 最后跑一次最大流即可。 代码如下: 阅读全文
posted @ 2017-02-19 15:17 dwtfukgv 阅读(233) 评论(0) 推荐(0)
UVa 658 It's not a Bug, it's a Feature! (状态压缩+Dijstra)
摘要: 题意:首先给出n和m,表示有n个bug和m个补丁。一开始存在n个bug,用1表示一个bug存在0表示不存在,所以一开始就是n个1,我们的目的是要消除所有的bug, 所以目标状态就是n个0。对于每个补丁,会给出使用这个补丁的时间,另外会给出两个长度为n的字符串,第一个字符串表示这个补丁适用于什么情况下 阅读全文
posted @ 2017-02-19 14:56 dwtfukgv 阅读(249) 评论(0) 推荐(0)
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3