求助
  • 板块学术版
  • 楼主HZHDCM
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/10/17 19:51
  • 上次更新2024/10/17 21:37:26
查看原帖
求助
817681
HZHDCM楼主2024/10/17 19:51

一开始是这样写的

void dij(int dis[],int s){
	priority_queue<pair<int,int> > Q;
	memset(vis,0,sizeof(vis));
	memset(dis,0x3f,sizeof(dis));
	Q.push({0,s});
	dis[s]=0;
	while(!Q.empty()){
		int u=Q.top().second;
		Q.pop();
		if(vis[u])continue;
		vis[u]=1;
		for(auto v:A[u])
			if(dis[v]>dis[u]+1)
				dis[v]=dis[u]+1,Q.push({-dis[v],v});
	}
	return ;
}

但是memset总是初始化不上,求解答

2024/10/17 19:51
加载中...