#include #include #include #include using namespace std; const int MAXN=1000+10; const int inf=1<<30; struct Node{ int v,w,id; }; vectorvet[MAXN]; int path[MAXN]; int dist[MAXN]; bool visited[MAXN]; bool mark[MAXN*50]; int id[MAXN]; int n,m; bool tag; void SPFA(int u){ for(int i=1;i<=n;i++)dist[i]=inf; dist[u]=0; memset(visited,false,sizeof(visited)); queueQ; Q.push(u); while(!Q.empty()){ int u=Q.front(); Q.pop(); visited[u]=false; for(int i=0;i