关于dij过程中更新值的问题
查看原帖
关于dij过程中更新值的问题
188879
VioletIsMyLove楼主2023/5/11 21:29
			if(!vis[son[i]]&&dis[a.id]+v[i]<dis[son[i]]){
				dis[son[i]]=dis[a.id]+v[i];
				put(dis[son[i]],son[i]);
			}
			if(dis[a.id]+v[i]<dis[son[i]]){
				dis[son[i]]=dis[a.id]+v[i];
				if(vis[son[i]])put(dis[son[i]],son[i]);
			}

按着前者这么写也能通过这道题,但是能证明前者的正确性吗>_<,感觉这样会有些值更新不到

2023/5/11 21:29
加载中...