1 PRIORITY_QUEUE <ペア<-1,11,11->> Q。 2 空隙SPFA(LL上) 3 { 4 のmemset(扁、0、はsizeof (扁))。 5つの DIS [トップ] = 0 ; q.push(make_pair(0、上));扁[トップ] = 1 。 6 ながら(!q.empty()) 7 { 8 LL X = q.top()第二; q.pop(); 9 用(LL I =ヘッド[X]; I; I = E [I] .N) 10 { 11 LLへ= E [I] .TO。 12 もし(DIS DIS [X] +>に] E [i]は.W) 13 { 14 DIS [に対する] =のDIS [X] + E [I] .W。 15 であれば(扁が== [する] 0 ) 16 { 17 q.push(make_pair( - DIS)に、[します])。 18 扁【へ] = 1 。 19 } 20 } 21 } 22 } 23 }