15145641

摘要: 题意:给出一个有向图代表牛和牛喜欢的关系,且喜欢关系具有传递性,求出能被所有牛喜欢的牛的总数(除了它自己以外的牛,或者它很自恋)。 思路:这个的难处在于这是一个有环的图,对此我们可以使用tarjan算法求出强连通分量,把强连通分量压缩成一个点,构成一个新的图,这个图一定是没有环的,如果有环就跟强连通 阅读全文
posted @ 2016-05-18 21:01 icode-xiaohu 阅读(886) 评论(0) 推荐(0) 编辑
摘要: 题意:求无向图的割边。 思路:tarjan算法求割边,访问到一个点,如果这个点的low值比它的dfn值大,它就是割边,直接ans++(之所以可以直接ans++,是因为他与割点不同,每条边只访问了一遍)。 需要注意的就是此处有多重边,题目中要求输出确定的不能被删除的边,而多重边的保留不是可以确定的,所 阅读全文
posted @ 2016-05-18 19:32 icode-xiaohu 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 基础模板题,应用tarjan算法求有向图的强连通分量,tarjan在此处的实现方法为:使用栈储存已经访问过的点,当访问的点离开dfs的时候,判断这个点的low值是否等于它的出生日期dfn值,如果相等,那这个点就在一个强连通分量里面,此时从栈中向外取出元素,知道取出的元素与这个点的值相等时结束,我们所 阅读全文
posted @ 2016-05-18 19:00 icode-xiaohu 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 13级春季校赛的热身题,但优化后我的代码也超时了,后来看了看学长的解法,觉得最简单的还是map,再一次感受到了map的强大。 题目描述如下 There is an integer set A. How many couples of a and b, which can make a+b=0(a∈A 阅读全文
posted @ 2016-05-18 17:12 icode-xiaohu 阅读(206) 评论(0) 推荐(0) 编辑