TOJ 3046: 招商银行网络系统
3046: 招商银行网络系统 
Total Submit: 12 Accepted:3
Description
虽然招商银行的网络安全已经做得非常完善,但是天有不测风云,招商银行内部网络系统的一台服务器意外感染了一种新型病毒。为了避免更大的损失,管理员必须采取紧急措施遏制病毒的蔓延。
招商银行内部网络系统共有n台服务器,这n台服务器使用m条电缆互相连接。为了描述方便,我们给服务器编号1到n。初始时,1号服务器感染了病毒。每隔一分钟,病毒便会从已感染病毒的服务器扩散到所有与之直接相连的服务器上。
招商银行的网络系统设计得非常坚固,即使要切断电缆也非常困难。管理员只能在初始时切断一根电缆。为了让整个网络系统尽可能晚地全部被病毒感染,他应该切断哪根电缆?
Input
输入包含多组数据。
每组数据的第一行是两个整数n和m (2≤n≤200, 1≤m≤n*(n-1)/2),其含义如上面所描述。
接下来m行每行两个整数a, b (1≤a, b≤n),表示服务器a和服务器b有电缆直接连接。任意两台服务器间至多有一根电缆相连。
输入数据以n=m=0结束。
Output
对每组数据输出最晚多少分钟之后整个网络系统被感染。如果切断某根电缆后病毒永远不会传播到某些服务器,那么输出”Great”。
Sample Input
4 5
1 2
2 3
3 4
4 1
1 3
4 4
1 2
2 3
3 4
1 3
0 0
Sample Output
2
Great
可以想到其实就是到1的最短路
可以想到m*m的,但是肯定会超时的啊。不过影响bfs其实就是bfs树上的路径,去枚举这些路径就是n*m的复杂度了
#include <bits/stdc++.h>
using namespace std;
#define fi first
#define se second
const int N=;
vector<int>G[N];
vector<pair<int,int>>E;
int vis[N],n,cnt,ans;
void bfs(int s,int t)
{
memset(vis,,sizeof vis),cnt=;
queue<pair<int,int>>Q;
Q.push({,}),vis[]=;
while(!Q.empty())
{
pair<int,int> x=Q.front();
Q.pop(),ans=max(ans,x.se),cnt++;
for(auto X:G[x.fi])
if(!vis[X]&&(!(X==s&&x.fi==t||X==t&&x.fi==s)))Q.push({X,x.se+}),vis[X]=;
}
}
void la()
{
for(int i=; i<n-; i++)
{
bfs(E[i].fi,E[i].se);
if(cnt<n)
{
cout<<"Great\n";
return;
}
}
cout<<ans<<"\n";
}
int main()
{
int m,x;
while(cin>>n>>m,n||m)
{
ans=,E.clear(),memset(vis,,sizeof vis);
for(int i=,u,v; i<m; i++)cin>>u>>v,G[u].push_back(v),G[v].push_back(u);
queue<int>Q;
Q.push(),vis[]=;
while(!Q.empty())
{
x=Q.front(),Q.pop();
for(auto X:G[x])if(!vis[X])Q.push(X),E.push_back({x,X}),vis[X]=;
}
la();
for(int i=; i<=n; i++)G[i].clear();
}
}
TOJ 3046: 招商银行网络系统的更多相关文章
- IT基础架构规划方案一(网络系统规划)
背景 某集团经过多年的经营,公司业务和规模在不断发展,公司管理层和IT部门也认识到通过信息化手段可以更好地支撑公司业务运营.提高企业生产和管理效率.同时随着新建办公 ...
- 2015 史考特(Scottrade)开户指南 + 招商银行香港一卡通汇款【图文教程】
最近刚开始炒美股.总的来说分为两步:一是开户,即选一个美股券商开设股票交易账户:二是汇款注资,把人民币换成美元转账到股票交易账户上.上述第一点其实相对简单,美股券商大多都对美国以外的外国人开放申请,且 ...
- TOJ 2776 CD Making
TOJ 2776题目链接http://acm.tju.edu.cn/toj/showp2776.html 这题其实就是考虑的周全性... 贡献了好几次WA, 后来想了半天才知道哪里有遗漏.最大的问题 ...
- CNAPS Code 查询(招商银行)
招商银行的妹子实在太傻了,根本不知道什么是CNAPS Code.联行号,完全答非所问. 最后还是自己搞定了,如图: 最后再看看招行人员的英语水平,真是不知道什么是东西:
- hdu 3046 Pleasant sheep and big big wolf 最小割
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3046 In ZJNU, there is a well-known prairie. And it a ...
- poj 3046 Ant Counting (DP多重背包变形)
题目:http://poj.org/problem?id=3046 思路: dp [i] [j] :=前i种 构成个数为j的方法数. #include <cstdio> #include ...
- HDU 3046 Pleasant sheep and big big wolf(最小割)
HDU 3046 Pleasant sheep and big big wolf 题目链接 题意:一个n * m平面上,1是羊.2是狼,问最少要多少围墙才干把狼所有围住,每有到达羊的路径 思路:有羊和 ...
- TOJ 1702.A Knight's Journey
2015-06-05 问题简述: 有一个 p*q 的棋盘,一个骑士(就是中国象棋里的马)想要走完所有的格子,棋盘横向是 A...Z(其中A开始 p 个),纵向是 1...q. 原题链接:http:// ...
- TOJ 1139.Compromise
2015-06-03 问题简述: 大概就是输入两段文本(用小写英文字母表示),分别用#表示一段话的结束输入,输出这两个文本的最长公共子序列. 简单的LCS问题,但是输入的是一段话了,而且公共部分比较是 ...
随机推荐
- 整合ssm集成框架
第一步:配置pom.xml 该代码放在<dependencies>里面 <!--spring 所需要的jar包 web.aop.jdbc.webmvc--> <!--1. ...
- mybatis-generator的maven插件使用异常(mybatis-generator-maven-plugin):generate failed: Exception getting JDBC Driver
使用mybatis的代码生成工具:mybatis-generator,在父model中引入了maven插件的依赖,如下: <!-- Mybatis.generator插件 --> < ...
- AngularJS 外部文件中的控制器其他实例
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- Erwin 简单使用
1. 物理设计:汉译英过程 ① Logical 中操作:Tools-Names-Edit Naming Standards…-Glossary选项import,导入内容为编辑好的CSV文件(只包含中文 ...
- react的 react-router使用
官方API:https://reacttraining.com/react-router/web/api/BrowserRouter; React Router 安装命令如下. 使用时,路由器Rout ...
- request中的那些方法到底是干什么的?
最近做Java Web项目,在.jsp页面和servlet之间request和response还是有些混淆,查阅了一些资料,总结如下,方便以后使用: 首先,servlet接口是最基本的,提供的五个方法 ...
- Linux编译移植Qt4的环境_在OMAPL138平台
Linux编译Qt4的环境_OMAPL138 手里有一块创龙OMAPL138的板子,我要在上面成功移植Qt环境和触摸屏幕,这是我第二次进行Linux的Qt环境移植,发现了很多问题,需要重新整理. 我编 ...
- L2-029 特立独行的幸福 (25 分)
L2-029 特立独行的幸福 (25 分) 对一个十进制数的各位数字做一次平方和,称作一次迭代.如果一个十进制数能通过若干次迭代得到 1,就称该数为幸福数.1 是一个幸福数.此外,例如 19 经过 ...
- 笔记-ORM-sqlalchemy
笔记-ORM-sqlalchemy 1. ORM 1.1. ORM框架简介 对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发 ...
- vue 组件轮播联动
组件轮播联动我使用的是 el-carousel 组件,具体代码如下: <el-carousel trigger="click" :interval="3000&qu ...