错误1
错误代码
int graph::get_grade(int grade)
{
int ki;
//找到服务器档位高于need的最小档位
for(ki=server_count-1;ki>=0;ki--)
{
if(server[ki].out<grade)
return ki+1;
}
}
正确代码
int graph::get_grade(int grade)
{
int ki;
//找到服务器档位高于need的最小档位
for(ki=server_count-1;ki>=0;ki--)
{
if(server[ki].out<grade)
break;
}
return ki+1;
}
如果始终不进入if那么代码1返回的值不确定
错误2
如果函数栈中的内存超出了限制将会出现一个段错误
错误3
resi_edge[edge[j].u][edge[j].v]-=delta;
resi_edge[edge[j].v][edge[j].u]+=delta;
错写成如下,当时检测多次才发现这个严重的失误resi_edge[edge[j].u][edge[j].v]-=delta;
resi_edge[edge[j].u][edge[j].v]+=delta;