ll@h,@w,@n,@d,@(x--,y--)[n],f[h][w]{},z=0,inc=0,dec=0; unionFind u('m',n+1,1); rep(i,n){ f[x[i]][y[i]]=i+1; rep(a,x[i]-d,x[i]+d+1){ if(a>=0&&a=0&&b s[h][w]; //!! rep(i,n){ if(u.size(i+1)>1){ ll r=u(i+1); z+=i==r; rep(a,x[i]-d,x[i]+d+1){ if(a>=0&&a=0&&b=0&&a=0&&b?=(ll)s[a][b].size()-1; } } } wt(z-dec,z+inc);