博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 1001--[BeiJing2006]狼抓兔子(最短路&对偶图)
阅读量:5217 次
发布时间:2019-06-14

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

1001: [BeiJing2006]狼抓兔子

Time Limit: 15 Sec  Memory Limit: 162 MB
Submit: 29035  Solved: 7604

Description

现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的,
而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形:

 

左上角点为(1,1),右下角点为(N,M)(上图中N=4,M=5).有以下三种类型的道路 
1:(x,y)<==>(x+1,y) 
2:(x,y)<==>(x,y+1) 
3:(x,y)<==>(x+1,y+1) 
道路上的权值表示这条路上最多能够通过的兔子数,道路是无向的. 左上角和右下角为兔子的两个窝,
开始时所有的兔子都聚集在左上角(1,1)的窝里,现在它们要跑到右下解(N,M)的窝中去,狼王开始伏击
这些兔子.当然为了保险起见,如果一条道路上最多通过的兔子数为K,狼王需要安排同样数量的K只狼,
才能完全封锁这条道路,你需要帮助狼王安排一个伏击方案,使得在将兔子一网打尽的前提下,参与的
狼的数量要最小。因为狼还要去找喜羊羊麻烦.

Input

第一行为N,M.表示网格的大小,N,M均小于等于1000.
接下来分三部分
第一部分共N行,每行M-1个数,表示横向道路的权值. 
第二部分共N-1行,每行M个数,表示纵向道路的权值. 
第三部分共N-1行,每行M-1个数,表示斜向道路的权值. 
输入文件保证不超过10M

Output

输出一个整数,表示参与伏击的狼的最小数量.

Sample Input

3 4
5 6 4
4 3 1
7 5 3
5 6 7 8
8 7 6 5
5 5 5
6 6 6

Sample Output

14
 

题目链接:

     

Solution

  首先应该会想到网络流。。。然后就做完了

  实际上这个做法并不是很优。。。

  通过平面图的知识我们可以在图的最左上和最右下建出两个新节点S和T。。。

  然后将每个方格看作一个节点,两个节点的公共边作为它们之间的边权。。。

  然后跑最短路即可。。效率O(n*m*log(n*m))

代码

#include
#include
#include
#include
#include
#define inf 0x3f3f3f3f#define LL long longusing namespace std;int n,m,N,hang;int cnt;struct edge{ int r,next; LL w;}e[6000010];int head[2000010];LL h[2000010];bool c[2000010];priority_queue
,vector
>,greater
> >q;void insert(int u,int v,LL w){ cnt++; //cout<
<
0;i=e[i].next){ int H=s+e[i].w; if(H
m) swap(n,m); for(int i=1;i

  

  

This passage is made by Iscream-2001.

 

转载于:https://www.cnblogs.com/Yuigahama/p/9648154.html

你可能感兴趣的文章
PAT B1018.锤子剪刀布(20)
查看>>
Extjs控件之 grid打印功能
查看>>
枚举类型(不常用)递归
查看>>
ETL
查看>>
Tomcat源码分析(六)--日志记录器和国际化
查看>>
minggw 安装
查看>>
Jquery操作cookie,实现简单的记住用户名的操作
查看>>
[BZOJ1196][HNOI2006]公路修建问题 二分答案+最小生成树
查看>>
PHP基础入门(二)
查看>>
[Luogu P3119] [USACO15JAN]草鉴定Grass Cownoisseur (缩点+图上DP)
查看>>
【原创】大数据基础之Zookeeper(4)应用场景
查看>>
18款在线代码片段测试工具
查看>>
20.C++- &&,||逻辑重载操作符的缺陷、,逗号重载操作符的分析
查看>>
静态变量数组实现LRU算法
查看>>
在SQL中怎么把一列字符串拆分为多列
查看>>
中文系统 上传file的input显示英文
查看>>
css样式写一个三角形
查看>>
比callback更简洁的链式执行promise
查看>>
android permission
查看>>
【译】在Asp.Net中操作PDF - iTextSharp - 使用字体
查看>>