题解 1841: 蓝桥杯2017年第八届真题-发现环

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

棋盘染色法

摘要:给棋盘按发现顺序编号,当发现该节点已经标记过时就找到了环,记录下环起点时的染色编号,回溯时保存结果。需要注意的时我们要额外处理找到的节点是上一个节点,而不是环的情况 ```cpp #include……

蓝桥杯2017年第八届真题-发现环-题解(C++代码)

摘要:解题思路:DFS不断向当前结点的下一个结点前进,顺便记下下一个结点的父节点以便回头可以找到所有在环上的结点。用一个数组s[maxn]记录DFS过程中每一个结点的访问状态,对于结点p, 如果:s[p]=……

蓝桥杯 发现环 DFS+并查集

摘要:# 蓝桥杯2017年第八届真题 发现环 DFS+并查集 ## 1. 思路 1. 并查集 代表**连通分支**, 当然, 属于同一个连通分支的节点一定彼此连通 2. 在输入边时, ……

蓝桥杯2017年第八届真题-发现环(纯dfs,无并查集)

摘要:解题思路:注意题目说法,如果将1作为根节点,建立一个树,只有一条边沟通树的非父子结点,故而我们可以首先dfs建立树,同时记录父结点,同时再做一遍dfs,此时注意保存沟通非父子节点的边所对应的两个结点。……

蓝桥杯2017年第八届真题-发现环(拓扑排序python)

摘要:解题思路: 关键点就在于怎么判断一个点是环上的点,还是一个普通的节点。每个点都统计度数(入度加上出度)。如果我们从所有度为1的点开始访问,对子节点的度数减少1,并判断子节点度数是否为1,为1才可以继续……

c++利用数组记录路径

摘要:解题思路:使用一个bool已经dfs来判断环上点的位置,详细的看代码上的注释注意事项:参考代码:#include<bits/stdc++.h>#define DZT ios::sync_with_st……