POJ3272 Cow Traffic
题目链接:http://poj.org/problem?id=3272
题目意思:n个点m条边的有向图,从所有入度为0的点出发到达n,问所有可能路径中,经过的某条路的最大次数是多少。边全是由标号小的到标号大的。
这道题求的是路径的最大通过数量,感觉比较典型,挺有意思的。
思路:建两个图一个正图,一个反图。将正图dfs一遍得到每个点到达n点的路径数,将反图dfs一遍得到每个点到达每个出度为0的点(奶牛的放牧地)的路径数,对于每条边正图上的终点路径数*反图上起点的路径数的最大值就是答案。
代码:
- //Author: xiaowuga
- #include <iostream>
- #include <algorithm>
- #include <set>
- #include <vector>
- #include <queue>
- #include <cmath>
- #include <cstring>
- #include <cstdio>
- #include <ctime>
- #include <map>
- #include <bitset>
- #include <cctype>
- #define maxx INT_MAX
- #define minn INT_MIN
- #define inf 0x3f3f3f3f
- #define mem(s,ch) memset(s,ch,sizeof(s))
- #define nc cout<<"nc"<<endl
- #define sp " "
- const long long N=*+;
- using namespace std;
- typedef long long LL;
- typedef int II;
- struct eage{
- LL x,y;
- }E[N];
- vector<LL>p[+];
- vector<LL>q[+];
- LL n,m;
- LL ansp[+];
- LL ansq[+];
- LL in[+];
- LL vis[+];
- void init(){
- for(II i=;i<=n;i++){
- p[i].clear();q[i].clear();
- in[i]=vis[i]=ansq[i]=ansp[i]=;
- }
- }
- LL dfsp(LL x){//正图
- if(vis[x]) return ansp[x];
- vis[x]=;
- if(x==n) return ansp[x]=;
- for(LL i=;i<p[x].size();i++){
- LL t=p[x][i];
- ansp[x]+=dfsp(t);
- }
- return ansp[x];
- }
- LL dfsq(LL x){//反图
- if(vis[x]) return ansq[x];
- vis[x]=;
- if(!in[x]) return ansq[x]=;
- for(LL i=;i<q[x].size();i++){
- LL t=q[x][i];
- ansq[x]+=dfsq(t);
- }
- return ansq[x];
- }
- void solve(){
- for(LL i=;i<=n;i++){
- if(!in[i]) dfsp(i);
- }
- mem(vis,);
- dfsq(n);
- LL ans=minn;
- for(LL i=;i<m;i++){
- LL x=E[i].x;
- LL y=E[i].y;
- ans=max(ans,ansp[y]*ansq[x]);
- }
- cout<<ans<<endl;
- }
- int main() {
- ios::sync_with_stdio(false);cin.tie();
- while(cin>>n>>m){
- init();
- for(II i=;i<m;i++){
- cin>>E[i].x>>E[i].y;
- p[E[i].x].push_back(E[i].y);//正图
- q[E[i].y].push_back(E[i].x);//反图
- in[E[i].y]++;
- }
- solve();
- }
- return ;
- }
POJ3272 Cow Traffic的更多相关文章
- BZOJ1638: [Usaco2007 Mar]Cow Traffic 奶牛交通
1638: [Usaco2007 Mar]Cow Traffic 奶牛交通 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 571 Solved: 199 ...
- 1638: [Usaco2007 Mar]Cow Traffic 奶牛交通
1638: [Usaco2007 Mar]Cow Traffic 奶牛交通 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 618 Solved: 217 ...
- bzoj1638 / P2883 [USACO07MAR]牛交通Cow Traffic
P2883 [USACO07MAR]牛交通Cow Traffic 对于每一条边$(u,v)$ 设入度为0的点到$u$有$f[u]$种走法 点$n$到$v$(通过反向边)有$f2[v]$种走法 显然经过 ...
- 拓扑排序/DP【洛谷P2883】 [USACO07MAR]牛交通Cow Traffic
P2883 [USACO07MAR]牛交通Cow Traffic 随着牛的数量增加,农场的道路的拥挤现象十分严重,特别是在每天晚上的挤奶时间.为了解决这个问题,FJ决定研究这个问题,以能找到导致拥堵现 ...
- 【BZOJ】1638: [Usaco2007 Mar]Cow Traffic 奶牛交通(dfs+dp)
http://www.lydsy.com/JudgeOnline/problem.php?id=1638 一条边(u, v)经过的数量=度0到u的数量×v到n的数量 两次记忆化dfs算出他们即可 #i ...
- 【动态规划】bzoj1638 [Usaco2007 Mar]Cow Traffic 奶牛交通
设f[u]为从度数0到u的路径条数,f2[u]为从u到n的路径条数. ans=max{f[x[i]]*f2[y[i]]}(1<=i<=m). #include<cstdio> ...
- BZOJ 1638 [Usaco2007 Mar]Cow Traffic 奶牛交通:记忆化搜索【图中边的经过次数】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1638 题意: 给你一个有向图,n个点,m条有向边. 对于所有从入度为0的点到n的路径,找出 ...
- bzoj 1638: [Usaco2007 Mar]Cow Traffic 奶牛交通【记忆化搜索】
震惊!记忆化搜索忘记返回map值调了半小时! 边(u,v)的经过次数是:能到u的牛数*v到n的方案数.正反两次连边,dfs两次即可 #include<iostream> #include& ...
- 杭电ACM分类
杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...
随机推荐
- InnoDB存储引擎表的逻辑存储结构
1.索引组织表: 在InnoDB存储引擎中,表都是依照主键顺序组织存放的.这样的存储方式的表称为索引组织表,在innodb存储引擎表中,每张表都有主键.假设创建的时候没有显式定义主键,则Inn ...
- CCFollow和ActionCallFunc
CCFollow动作,可以让一个节点跟随另一个节点做位移. CCFollow经常用来设置layer跟随sprite,可以实现类似摄像机跟拍的效果 效果是精灵在地图上移动,地图也会跟着移动,但是精灵仍然 ...
- CentOS6.2下安装配置MySql
转自:Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置 如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.ecli ...
- 开源搜索引擎评估:lucene sphinx elasticsearch (zhuan)
http://lutaf.com/158.htm ************************ 开源搜索引擎程序有3大类 lucene系,java开发,包括solr和elasticsearch s ...
- Linksys WRT54G2 V1刷ddwrt注意事项
关于DD-WRT和TOMATO下的应用就不多说了,反正其他能刷DD-WRT.TOMATO的路由器会有的功能,这台机器也都有,不过此机器刷TOMATO一定要刷ND版本的,因为5354的CPU是属于比较新 ...
- org.apache.hadoop.hbase.DoNotRetryIOException: Class org.apache.phoenix.coprocessor.MetaDataEndpointImpl cannot be loaded Set hbase.table.sanity.checks to false at conf or table descriptor if you want
https://stackoverflow.com/questions/38495331/apache-phoenix-unable-to-connect-to-hbase 这个坑不该啊 首选配置hb ...
- jQuery 中 attr() 和 prop() 方法的区别<转>
前几天,有人给 Multiple Select 插件 提了问题: setSelects doesn't work in Firefox when using jquery 1.9.0 一直都在用 jQ ...
- SenCha Touch HTML 5 应用程序缓存
http://www.cnblogs.com/qidian10/p/3292876.html https://developer.mozilla.org/zh-CN/docs/HTML/Using_t ...
- Office Web App2013 在线查看PDF文件
经常会有客户问,在SharePoint中,如何在浏览器中查看与编辑文档,通常给出的解决方案是集成Office Web App. 而在实际应用过程中,客户通常会要求实现PDF文件在线查看,对于PDF文件 ...
- Fastcgi_Finish_Request 提高页面响应速度
当PHP运行在FastCGI模式时,PHP FPM提供了一个名为fastcgi_finish_request的方法.按照文档上的说法,此方法可以提高请求的处理速度,如果有些处理可以在页面生成完后再进行 ...