Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void dijkestrea(int n){
- priority_queue <pii, vector <pii>, greater <pii> > q;
- q.push({0, 1});
- while(!q.empty()){
- int a = q.top().first;
- int b = q.top().second;
- q.pop();
- if(ara[b].size()==0) ara[b].push_back(a);
- else if(ara[b].back()!=a) ara[b].push_back(a);
- if(ara[b].size()>2) continue;
- for(int i=0;i<g[b].size();i++){
- if(ara[g[b][i]].size()==2) continue;
- q.push({a+d[b][i], g[b][i]});
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement