传送门 :
思路给出双向边和单向边 都有的图,让你指定双向边中的一个方向,最后使得他是 DAG
f l o y d ? floyd? floyd?啥标签啊
对于单向边我们可以直接跑 t o p s o r t ( ) topsort() topsort()
但是双向边我们就只可以跑一条(我们就跑当前节点指向到另一个节点的那一条)
因为没有spj ,这里在输出的时候需要特别处理
CODEvoid add(int x,int y,bool f){
to[++tl]=y;nex[tl]=fr[x];fr[x]=tl;fl[tl]=f;
}
int du[100010],cnt;
int n,p1,p2,x,y;
queue q;
void solve()
{
scanf("%d%d%d",&n,&p1,&p2);
for(int i=1;i
关注
打赏