Description

题目链接

Solution

从起点和终点分别做一次最短路并记录结果

枚举每一条可能的边判断

Code

  1. #include <cstdio>
  2. #include <algorithm>
  3. #include <queue>
  4. #include <cstring>
  5. #define N 1010
  6. using namespace std;
  7. struct info{int to,nex;}e[N*2];
  8. int n,m,s,t,tot,head[N],dis[N],ddis[N],Ans;
  9. bool g[N][N];
  10. inline int read(){
  11. int x=0,f=1;char ch=getchar();
  12. while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
  13. while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
  14. return x*f;
  15. }
  16. inline void Link(int u,int v){
  17. e[++tot].to=v;e[tot].nex=head[u];head[u]=tot;
  18. }
  19. bool vis[N];
  20. void bfs(int d[],int s){
  21. memset(vis,0,sizeof(vis));
  22. queue<int> q;
  23. q.push(s);
  24. d[s]=0,vis[s]=1;
  25. while(!q.empty()){
  26. int u=q.front();q.pop();
  27. for(int i=head[u];i;i=e[i].nex){
  28. int v=e[i].to;
  29. if(vis[v]) continue;
  30. d[v]=d[u]+1;
  31. q.push(v);
  32. vis[v]=1;
  33. }
  34. }
  35. }
  36. int main(){
  37. n=read(),m=read(),s=read(),t=read();
  38. while(m--){int u=read(),v=read();Link(u,v);Link(v,u);g[u][v]=g[v][u]=1;}
  39. bfs(dis,s);
  40. bfs(ddis,t);
  41. for(int i=1;i<=n;++i)
  42. for(int j=i+1;j<=n;++j)
  43. if(!g[i][j]&&dis[i]+ddis[j]+1>=dis[t]&&dis[j]+ddis[i]+1>=dis[t])
  44. Ans++;
  45. printf("%d\n",Ans);
  46. return 0;
  47. }

[CodeForces954D]Fight Against Traffic(最短路)的更多相关文章

  1. CodeForcesEducationalRound40-D Fight Against Traffic 最短路

    题目链接:http://codeforces.com/contest/954/problem/D 题意 给出n个顶点,m条边,一个起点编号s,一个终点编号t 现准备在这n个顶点中多加一条边,使得st之 ...

  2. Codeforces 954D Fight Against Traffic(BFS 最短路)

    题目链接:Fight Against Traffic 题意:有n个点个m条双向边,现在给出两个点S和T并要增加一条边,问增加一条边且S和T之间距离不变短的情况有几种? 题解:首先dfs求一下S到其他点 ...

  3. 最短路 CF954D Fight Against Traffic

    CF954D Fight Against Traffic 题意描述: 给你一张无向图,一共有n个点(2 <= n <= 1000),由m条边连接起来(1 <= m <= 100 ...

  4. Fight Against Traffic -简单dijkstra算法使用

    题目链接 http://codeforces.com/contest/954/problem/D 题目大意 n m s t 分别为点的个数, 边的个数,以及两个特殊的点 要求s与t间的距离在新增一条边 ...

  5. Codeforces 954 D Fight Against Traffic

    Discription Little town Nsk consists of n junctions connected by m bidirectional roads. Each road co ...

  6. Educational Codeforces Round 40 (Rated for Div. 2) Solution

    从这里开始 小结 题目列表 Problem A Diagonal Walking Problem B String Typing Problem C Matrix Walk Problem D Fig ...

  7. Educational Codeforces Round 40 A B C D E G

    A. Diagonal Walking 题意 将一个序列中所有的\('RU'\)或者\('UR'\)替换成\('D'\),问最终得到的序列最短长度为多少. 思路 贪心 Code #include &l ...

  8. LightOJ 1074 Extended Traffic (最短路spfa+标记负环点)

    Extended Traffic 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/O Description Dhaka city ...

  9. 快速切题 sgu103. Traffic Lights 最短路 难度:1

    103. Traffic Lights Time limit per test: 0.25 second(s)Memory limit: 4096 kilobytes input: standardo ...

随机推荐

  1. Spring aop读写分离

    一.采用读写分离技术的目标 随着网站的业务不断扩展,数据不断增加,用户越来越多,数据库的压力也就越来越大,采用传统的方式,比如:数据库或者SQL的优化基本已达不到要求,这个时候可以采用读写分离的策略来 ...

  2. (C# 基础) 类访问修饰符

    C# 中有5个权限修饰符,用于控制对对象的访问权限. 1. public:   访问不受限制. namespace, enum成员,interface成员 隐式的具有public 修饰符,不能在显式添 ...

  3. org.springframework.beans.factory.BeanNotOfRequiredTypeException

    写一个代码:关于Spring Bean的装配.基于annotation实现的范例代码. 出现了错误: 十一月 14, 2018 4:51:01 下午 org.springframework.conte ...

  4. ajax异步请求的使用情景

    先上代码 var sysAllowedExts; $.ajax({ url: url+"/getExtSetting", //请求的url地址 dataType: "js ...

  5. 在Markdown中插入不会显示的注释文本

    方法1 <!-- your comment goes here --> 方法2 [//]: <> (This is also a comment.) 原文地址: https:/ ...

  6. [转载]在VB.Net中获取COM对象的特定实例(Getting a specific instance of COM object in VB.Net)

    转载:http://www.it1352.com/534235.html 问题: I am writing a Windows Form application in .Net to list all ...

  7. 关于Ubuntu下安装Win8和Win8下安装Ubuntu的注意事项

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/32932387 本文出自:http://blog.c ...

  8. gearman安装实录

    花了5个小时装好了gearman,问题不断,坑爹的服务器yum还坏了,悲催. 服务器系统:centos5.3 64位 gearman版本:1.1.8 安装包(相关依赖)下载 1.gearman安装包 ...

  9. input或其他元素的左上角和左下角单独圆角实现

    border-bottom-left-radius:6px;/*左下角圆角*/    border-top-left-radius: 6px;/*左上角圆角*/

  10. 《JavaScript高级程序设计第三版》——细碎知识痛点整理(第六章)

    面向对象的程序设计 对象是一组没有特定顺序的值6.1.1 属性类型ECMAScript中有两种属性:数据属性和访问器属性.1. 数据属性Configurable 表示能否通过delete删除属性从而重 ...