1 while(!p.empty()){ 2 pp=p.front();p.pop(); 3 for(int i=1;i<=n;i++)if(w[pp.num][i]<0x7fffffff){ 4 if(pp.st>pp.ct)ps[i].st+=(pp.st-pp.ct)*w[pp.num][i]; 5 ps[i].in--; 6 if(ps[i].in==0)p.push(ps[i]); 7 } 8 }