题目描述
X 国的一个网络使用若干条线路连接若干个节点。节点间的通信是双向的。某重要数据包,为了安全起见,必须恰好被转发两次到达目的地。该包可能在任意一个节点产生,我们需要知道该网络中一共有多少种不同的转发路径。
源地址和目标地址可以相同,但中间节点必须不同。
如下图所示的网络。

1 -> 2 -> 3 -> 1 是允许的
1 -> 2 -> 1 -> 2 或者 1 -> 2 -> 3 -> 2 都是非法的。
输入
输入数据的第一行为两个整数N M,分别表示节点个数和连接线路的条数(1< =N< =10000; 0< =M< =100000)。
接下去有M行,每行为两个整数 u 和 v,表示节点u 和 v 联通(1< =u,v< =N , u!=v)。
输入数据保证任意两点最多只有一条边连接,并且没有自己连自己的边,即不存在重边和自环。
输出
输出一个整数,表示满足要求的路径条数。
样例输入
4 4
1 2
2 3
3 1
1 4
样例输出
10
思路:每一个点都搜一遍,寻找可能的结果。因为只是转两次,所以数据量不是很大。
代码如下:

#include<bits/stdc++.h>
#define ll long long
using namespace std;const int maxx=1e5+100;
struct edge{int to;int next;
}e[maxx<<2];
int head[maxx<<2];
int n,m,tot=0;inline void init()
{memset(head,-1,sizeof(head));
}
inline void add(int u,int v)
{e[tot].next=head[u],e[tot].to=v,head[u]=tot++;
}
inline void dfs(int u,int f,int num,int &sum)
{if(num==3){sum++;return ;}for(int i=head[u];i!=-1;i=e[i].next){int to=e[i].to;if(to==f) continue;dfs(to,u,num+1,sum);}
}
int main()
{scanf("%d%d",&n,&m);init();int x,y;for(int i=1;i<=m;i++){scanf("%d%d",&x,&y);add(x,y);add(y,x);}int ans=0;for(int i=1;i<=n;i++) dfs(i,i,0,ans);cout<<ans<<endl;return 0;
}

努力加油a啊,(o)/~

[蓝桥杯][历届试题]网络寻路(DFS)相关推荐

  1. [蓝桥杯][历届试题]网络寻路-dfs,图的遍历

    题目描述 X 国的一个网络使用若干条线路连接若干个节点.节点间的通信是双向的.某重要数据包,为了安全起见,必须恰好被转发两次到达目的地.该包可能在任意一个节点产生,我们需要知道该网络中一共有多少种不同 ...

  2. 蓝桥杯c语言试题幸运数,蓝桥杯  历届试题 幸运数  dfs

    时间限制:1.0s   内存限制:256.0MB 问题描述 幸运数是波兰数学家乌拉姆命名的.它采用与生成素数类似的"筛法"生成 . 首先从1开始写出自然数1,2,3,4,5,6,. ...

  3. 历届试题+九宫重排+java_蓝桥杯 历届试题 九宫重排 (bfs+康托展开去重优化)...

    Description 如下面第一个图的九宫格中,放着 1~8 的数字卡片,还有一个格子空着.与空格子相邻的格子中的卡片可以移动到空格中.经过若干次移动,可以形成第二个图所示的局面. 我们把第一个图的 ...

  4. 蓝桥杯历届试题代码参考

    蓝桥杯历届试题代码参考 历届试题 核桃的数量 打印十字图 带分数 剪格子 错误票据 翻硬币 连号区间数 买不到的数目 大臣的旅费 幸运数 横向打印二叉树 危险系数 网络寻路 高僧斗法 格子刷油漆 农场 ...

  5. 问题 1433: [蓝桥杯][历届试题]危险系数(并查集and暴力)

    问题 1433: [蓝桥杯][历届试题]危险系数 时间限制: 1Sec 内存限制: 128MB 提交: 123 解决: 39 题目描述 问题描述 抗日战争时期,冀中平原的地道战曾发挥重要作用. 地道的 ...

  6. 蓝桥杯历届试题 地宫取宝 dp or 记忆化搜索

    问题描述 X 国王有一个地宫宝库.是 n x m 个格子的矩阵.每个格子放一件宝贝.每个宝贝贴着价值标签. 地宫的入口在左上角,出口在右下角. 小明被带到地宫的入口,国王要求他只能向右或向下行走. 走 ...

  7. [蓝桥杯][历届试题]国王的烦恼(反向+并查集)

    问题 1435: [蓝桥杯][历届试题]国王的烦恼 时间限制: 1Sec 内存限制: 128MB 提交: 802 解决: 213 题目描述 C国由n个小岛组成,为了方便小岛之间联络,C国在小岛间建立了 ...

  8. 蓝桥杯 - 历届试题 - 日期问题

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_33531813/article/details/79516258 </div>&l ...

  9. 二分搜索,POJ2456,NYOJ 914, 区间移位-蓝桥杯-历届试题

    二分搜索是不断缩减可能解的范围来得到最优解, 因为每次是折半, 所以指数爆炸有多快,这个效率就有多高 POJ2456为例, 传送门 简而言之, 就是将牛之间的距离的最小值最大化. #include&l ...

最新文章

  1. 错误解决记录------------mysql连接本地数据库显示can't get hostname for your address
  2. 遇到npm install的错误,多比较比较npm的版本
  3. setCharacterEncoding和setContentType
  4. Redis 发布订阅,小功能大用处,真没那么废材!
  5. 下载的字幕php是什么格式的,mkv是什么文件格式
  6. css 旋转 animation动画
  7. 无法生成“F:\system voiume information”下的常规文件夹列表拒绝访问
  8. C语言:从键盘输入三个数,求最值问题
  9. croppic 图片裁剪
  10. 学习日记:scipy库的版本差异
  11. php物料编码生成器,物料编码生成器下载|
  12. 在线API 工具之SosoApi
  13. 海康威视算法实习面试——我的第一次面试经历
  14. 实现CS客户端服务器模型(Linux系统)
  15. Canvas动画案例演示,含动画猫、变幻线、代码雨等
  16. 彻底理解js的作用域链
  17. JavaScript中栈内存与堆内存分别是什么?
  18. .NET周报【11月第4期 2022-11-30】
  19. 微信定位当前城市 php,html5,javascript_微信内置浏览器如何定位用户所在城市,html5,javascript - phpStudy...
  20. E575: viminfo: Illegal starting char in line:(z)

热门文章

  1. C#各种配置文件使用,操作方法总结
  2. linux g命令,【Linux】常用命令大全
  3. kali Linux 火狐浏览器改中文
  4. vue实现HTML转PDF (已解决清晰、页边距、图片跨域导出等问题)
  5. lis25ba_LIS25BA - MEMS数字输出运动传感器:低噪声,高带宽,3轴加速度计,带TDM接口 - STMicroelectronics...
  6. linux修改ip广播地址,Linux设置查看静态IP之ifconfig命令
  7. mysql相关文献及翻译_MySQL数据库管理外文翻译文献中英文.doc
  8. 没有语言基础可以学python_没有Python语言基础可以学习深度学习吗?
  9. python写接口函数_python接口自动化测试二十:函数写接口测试
  10. Oracle:集群因子