投票

题意

  • 现在yoyo所在班级要选一个班长出来,每个同学可以投不止一张的票。有个约定,A同学投了B,B同学投了C,那么C就相当于获得了两张票,也就是说这中投票具有传递性。求最高票数,并输出那些同学获得了最高票数,从小到大。

分析

1.首先第一步反向建边然后缩点,就是一个无环图了,这时候感觉再跑一边tarjan,每个点结束时候dfnnum序减去最初进来的时候dfnnum差值就是这联通块投票数,不过这里dfnnum每次加上联通块所包含点的个数而不是加一