突然发现了一个关于SPFA的疑问
查看原帖
突然发现了一个关于SPFA的疑问
86971
TRZ_2007楼主2020/8/25 14:33

这道题的SPFA代码中,我的判断负环是这么写的:

if(!inq[v]) {
	inq[v] = 1;
	book[v]++;
	q.push(v);
	if(book[v] > n + 1) return -1;
}

这个是对的,但是如果我把它改成了这个:

if(!inq[v]) {
	inq[v] = 1;
	book[v]++;
	if(book[v] > n + 1) return -1;
    q.push(v);
}

这个只有23pts,保证SPFA以及其他程序正确,则为啥这么改掉就不行了?

2020/8/25 14:33
加载中...