题目链接:
思路:对每个点spfa求一次最短路,每次求的时候都要用一个MAX_dist[]来保存当前点到各点的最短路径的最大值,然后这个数组中的min值就是star value了。。。
View Code Q;22 Q.push(u);23 while(!Q.empty()){24 int u=Q.front();25 Q.pop();26 visited[u]=false;27 for(int i=0;i MAX_dist[v])MAX_dist[v]=dist[v];33 if(!visited[v]){34 Q.push(v);35 visited[v]=true;36 }37 }38 }39 }40 }41 42 43 int main(){44 int _case;45 scanf("%d",&_case);46 while(_case--){47 scanf("%d%d",&n,&m);48 for(int i=1;i
1 #include2 #include 3 #include 4 const int MAXN=10000+10; 5 const int inf=1<<30; 6 using namespace std; 7 struct Node{ 8 int v,w; 9 };10 vector mp[MAXN];11 int dist[MAXN];12 bool visited[MAXN];13 int MAX_dist[MAXN];14 int n,m;15 16 void SPFA(int u){17 for(int i=1;i