如果你判断重构是这么判断的:
if (!(询问左端点 <= 块左端点 && 询问右端点 >= 块右端点)) { 重构块 }
那么要加
if(询问左端点>块右端点||询问右端点>块左端点){ continue; }
不然如果不询问到这个块,这个块就会一直重构