按时间一步一步模拟. 每一次,首先将所有没有水但是可以被灌到水的管子标记为有水,然后求出有水的管子里水面高度的最小值. 如果$a$号管有水且最小值为$b$,那么说明此时蜘蛛碰到了水. 如果有管子溢出且最小值就是它,那么说明此时无论如何水面都不会再上涨,即无解. 然后往所有高度等于最小值的管子里灌上一高度的水即可. #include<cstdio> const int N=25,M=110; int n,m,i,j,x,y,z,A,B,T,g[N],v[M],w[M],nxt[M],ed; st…