#include using namespace std; #include struct UF{ int n; vectorparent,rank; UF(int n_=0):n(n_),parent(n_),rank(n_,1) { for(int i=0;i>N; for(int i=0;i>D[i]; for(int i=0;i>W[i]; UF uf(N+1); for(int i=0;i