ssl1217-删边【图论,dfs】
2017-12-30 13:25
148 查看
题目
给出一个连通无向图,求最多能删掉多少条边后还是连通图。输入
4(顶点数) 6(边数)1 2 (表示一条点1到点2的线)
1 3
1 4
2 3
2 4
3 4
输出
3dfs解题思路
这道题其实不用dfs更简单,但是毕竟例题还是用一下吧。首先我们如果到达一个点便标记一下,等到下一次在到这个点时就可以确定这条线是不需要的(因为有其他的方法可以到达)
dfs代码
#include<cstdio> using namespace std; int walk[101],a[101][101],x,y,n,m,s; void dfs(int x) { walk[x]=true;//标记已有方法可以到达 for (int i=1;i<=n;i++) { if (a[x][i]==true && i!=x) //如果可以到达 { a[x][i]=false; a[i][x]=false; //标记为已经搜过 if (walk[i]) s++; //如果有方法可以到达就删掉这条边 4000 else dfs(i); //不然就搜索 } } } int main() { scanf("%d%d",&n,&m); for (int i=1;i<=m;i++) { scanf("%d%d",&x,&y); a[x][y]=true; a[y][x]=true;//表示两点连通 } dfs(1);//搜索 printf("%d",s);//输出 }
其他解题思路
其实根据推理,输出6-4+1(m-n+1)就可以的相关文章推荐
- HDU2489 Minimal Ratio Tree 解题报告【图论】【Kruskal】【dfs】
- sdutoj 3361 数据结构实验之图论四:迷宫探索(dfs)
- bzoj 1064: [Noi2008]假面舞会 (图论+DFS)
- SDUT_2015寒假集训_BFS&DFS_A-数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 【备战NOIP2012图论专项模拟试题】砍树 纪中3079 dfs
- 删边-SSL 1217
- codeforces 117C - Cycle 图论 DFS
- Directed Roads (dfs 组合数学 图论)
- ssl1613-最短路径问题【图论,最短路径(还不明显?)】
- POJ 2240 Arbitrage / ZOJ 1092 Arbitrage / HDU 1217 Arbitrage / SPOJ Arbitrage(图论,环)
- 图论dfs和bfs的感想
- [HDU 4118]Holiday's Accommodation[图论][非递归dfs]
- codeforces 129C - Statues 图论 DFS
- BZOJ 1217: [HNOI2003]消防局的设立 贪心+dfs
- bzoj 1064 假面舞会 图论??+dfs
- 【图论--DFS】CCF 201709-4 通信网络
- 图论--DFS-SPFA求负环
- 图论算法——基于的java实现(dijkstra,bfs,dfs,floyd)
- 图论之图的遍历DFS与BFS
- SSL 1108——【USACO 2.1】海明码(DFS)