为什么dij会挂
查看原帖
为什么dij会挂
140694
NotTogawaButSakiko楼主2022/2/28 17:00
void dijskra(){
    priority_queue <pair<double, ll>> q;
    for(re ll i = 0; i <= n; i++)   h[i] = 0x7fffffff;
    h[n] = 0;
    q.push(make_pair(-0, n));
    while(!q.empty()){
        ll d = q.top().first, u = q.top().second;
        q.pop();
        if(-d != h[u])  continue;
        for(auto i : revedge[u])
            if(h[i.to] > h[u] + i.w){
                h[i.to] = h[u] + i.w;
                q.push(make_pair(-h[i.to], i.to));
            }
    }
}

将其中的

if(-d != h[u])  continue;

删去后,获得了原始数据的100分

删前的提交记录

删后的提交记录

算法为A*

2022/2/28 17:00
加载中...