hihocoder 1174 [算法]: 计算每一个点的入度值deg[i],这一步需要扫描所有点和边,复杂度O(N+M). 把入度为0的点加入队列Q中,当然有可能存在多个入度为0的点,同时它们之间也不会存在连接关系,所以按照任意顺序加入Q都是可以的. 从Q中取出一个点p.对于每一个未删除且与p相连的点q,deg[q] = deg[q] - 1:如果deg[q]==0,把q加入Q. 不断重复第3步,直到Q为空. 最后剩下的未被删除的点,也就是组成环的点了. [代码]: #include <bits…