const int MAXN=1e4+10;
int m,n,s,cnt,head[MAXN],dist[MAXN];
struct Edge {
int to,val,next;
} e[500010];
inline void add(int x,int y,int val) {
e[++cnt].to=y;
e[cnt].val=val;
e[cnt].next=head[x];
head[x]=cnt;
}
bool inque[MAXN];
queue<int>que;
inline bool SPFA() {
memset(dist,0x3f3f3f3f,sizeof(dist));
memset(inque,0,sizeof(inque));
dist[s]=0;
inque[s]=1;
que.push(s);
while(!que.empty()) {
int x=que.front();
que.pop();
inque[x]=0;
for(int i=head[x]; i; i=e[i].next) {
int y=e[i].to;
if(e[i]
SPFA模板+dfs版检测负环
最新推荐文章于 2020-02-12 02:18:15 发布