ll@N,@P[N],@M,@(U--,V--)[M],@K,@(A--,B--,S)[K],t=0; maxflowF; F.malloc(N+K+2); F.init(N+K+2); rep(i,N){ if(P[i]>=0)t+=P[i],F.addEdge(N,i,P[i]); else F.addEdge(i,N+1,-P[i]); } rep(i,M)F.addEdge(V[i],U[i],int_inf); rep(i,K)F.addEdge(N+2+i,A[i],int_inf),F.addEdge(N+2+i,B[i],int_inf),t+=S[i],F.addEdge(N,N+2+i,S[i]); wt(t-F.solve(N,N+1));