maxn=40010,maxm=40010;
const int inf=0x3fffffff;
int mn,jj,uu,n,m,num,len,next[maxm],ev[maxm],memo,idu,idv...&j2<m)
{
getid(i1,j1,i2,j2);
addedge(idu,idv...)
{
scanf("%d%d%d%d",&i1,&j1,&i2,&j2);//jie
getid(i1-1,j1-1,i2-1,j2-1);
idv...=mn+4;
addedge(idu,idv,idw/2);
dijkstra(mn,mn+4);
nbs[idu]=next[num];num-=2;nbs...,idw/2);
}
getid(ii1-1,jj1-1,ii2-1,jj2-1);
idv=mn+4;
addedge(idu,idv,idw/2);
dijkstra