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)。

输入数据保证任意两点最多只有一条边连接,并且没有自己连自己的边,即不存在重边和自环。

输出一个整数,表示满足要求的路径条数。

例如:
用户输入:
3 3
1 2
2 3
1 3
则程序应该输出:
6

再例如:
用户输入:
4 4
1 2
2 3
3 1
1 4
则程序应该输出:
10

深度优先搜索

深搜三步走。

Code

def dfs(x, pre, step):if step == 3:global ansans += 1returnfor i in range(len(graph[x])):if graph[x][i] != pre:dfs(graph[x][i], x, step + 1)if __name__ == '__main__':n, m = map(int, input().split())ans, graph = 0, [[] for _ in range(10007)]for _ in range(m):u, v = map(int, input().split())graph[u].append(v)graph[v].append(u)for i in range(1, n + 1):dfs(i, 0, 0)print(ans)

2013\National _C_C++_A\5.网络寻路相关推荐

  1. 2013\National _C_C++_A\4.约数倍数选卡片

    闲暇时,福尔摩斯和华生玩一个游戏: 在N张卡片上写有N个整数.两人轮流拿走一张卡片.要求下一个人拿的数字一定是前一个人拿的数字的约数或倍数.例如,某次福尔摩斯拿走的卡片上写着数字"6&quo ...

  2. 2013\National _C_C++_A\2.骰子迷题

    小明参加了少年宫的一项趣味活动:每个小朋友发给一个空白的骰子(它的6个面是空白的,没有数字),要小朋友自己设计每个面写哪个数字.但有如下要求: 每个面只能填写 0 至 8 中的某一个数字. 不同面可以 ...

  3. 2013\National _C_C++_A\1.填算式

    请看下面的算式: (ABCD - EFGH) * XY = 900 每个字母代表一个0~9的数字,不同字母代表不同数字,首位不能为0. 比如,(5012 - 4987) * 36 就是一个解. 请找到 ...

  4. 2013\National _C_C++_C\1.好好学习

    汤姆跟爷爷来中国旅游.一天,他帮助中国的小朋友贴标语. 他负责贴的标语是分别写在四块红纸上的四个大字:"好.好.学.习". 但是汤姆不认识汉字,他就想胡乱地贴成一行. 请你替小汤姆 ...

  5. 2013\National _C_C++_B\4.高僧斗法

    古时丧葬活动中经常请高僧做法事.仪式结束后,有时会有"高僧斗法"的趣味节目,以舒缓压抑的气氛. 节目大略步骤为:先用粮食(一般是稻米)在地上"画"出若干级台阶( ...

  6. 2013\National _C_C++_B\2.连续奇数和

    小明看到一本书上写着:任何数字的立方都可以表示为连续奇数的和. 比如: 2^3 = 8 = 3 + 5 3^3 = 27 = 7 + 9 + 11 4^3 = 64 = 1 + 3 + - + 15 ...

  7. 2013\National _C_C++_B\1.猜灯谜

    A 村的元宵节灯会上有一迷题: 请猜谜 * 请猜谜 = 请边赏灯边猜 小明想,一定是每个汉字代表一个数字,不同的汉字代表不同的数字. 请你用计算机按小明的思路算一下,然后提交"请猜谜&quo ...

  8. 2019\National _C_C++_A\试题 A: 三升序列

    [问题描述] 对于一个字母矩阵,我们称矩阵中的一个三升序列是指在矩阵中找到三个字母,它们在同一行,同一列,或者在同一 45 度的斜线上,这三个字母从左向右看.或者从上向下看是递增的. 例如,如下矩阵中 ...

  9. 蓝桥杯2013年国赛A组——网络寻路(DFS和中转边巧解)

    蓝桥杯2013年国赛A组--网络寻路 1.题目描述 2.输入输出 3.样例输入和输出 4.题目分析 1.首先明确,题目中的目的地有两种,一种是回到原点,一种是到达没有到达的地方 2.在路径中经过的点不 ...

最新文章

  1. 为了追求更快,CPU、内存、I/O都做了哪些努力?
  2. R语言使用ggplot2包使用geom_violin函数绘制分组小提琴图(配置图例位置、移除图例)实战
  3. DeepMind-深度学习: AI革命及其前沿进展 (54页ppt报告)
  4. SQL用了Union后的排序问题
  5. [EffectiveC++]item21:Don't try to return a reference when you must return an object
  6. 影视,高清 音乐 工具
  7. 那些《西游记》中你不知道的野史,信不信由你
  8. the title and note has maintained the same text type
  9. 数据结构-栈应用之逆波兰表达式(后缀表达式)
  10. Unity3D热更新之LuaFramework篇[06]--Lua中是怎么实现脚本生命周期的
  11. 解决:Error response from daemon: manifest for xxx:latest not found: manifest unknown...
  12. 【无标题】全国矢量地图下载
  13. Flash遮罩层初识
  14. 2019春季总结报告
  15. win10 手动设置 DNS 地址
  16. HNSWNSG-基于图的ANN近邻搜索
  17. 用lingo解决钢管下料问题
  18. 在linux服务器上部署禅道环境
  19. 利用java实现发送邮件
  20. Kafaka报错:Creating topics with default partitions/replication factor are only supported in CreateTopi

热门文章

  1. 《追风行动》有点儿意思
  2. 20180826(01)-Java数据结构
  3. 充分感受中国缺少管理型软件人才的说法
  4. [转]PHP程序61条面向对象分析设计的经验原则
  5. css什么是自适应布局,CSS自适应布局
  6. java:蓝桥杯 矩阵乘法
  7. macos server 恢复安装_Go语言:Docker安装及运行consul节点
  8. docker编译Linux内核,c – 如何编译在docker中使用内核函数的C代...
  9. python中dataframe合并列名日期到季度_python 处理dataframe中的时间字段方法
  10. gpio复用 海思_实现海思平台GPIO驱动