求助
查看原帖
求助
220558
Doqe楼主2023/6/6 12:08

一部分题解里有这种代码:

void work(int u,int v)
{
    if(u<k&&v<k)return OP|=(u>=v),void();
    if(su[u]<pr[v])return ;
    if(pr[u]>su[v])return OP=1,void();
    if(pr[u]==pr[v]&&su[u]==su[v])return ;
    int m1=(pr[u]+su[u])>>1,m2=(pr[v]+su[v])>>1;
    if(su[v]<=m1)
    {
        su[u]=m1,Q.push(u);
        if(su[u]==pr[u])OP=1;
    }
    if(pr[u]>m2)
    {
        pr[v]=m2+1,Q.push(v);
        if(su[v]==pr[v])OP=1;
    }
}

如果把 su[u]=m1 换成 su[u]=su[v] 就会 WA,为什么

2023/6/6 12:08
加载中...