分块时一定要分到dfn(2 * n)
错误示范 : for(int i=1;i<=n;++i) gp[i] = (i - 1) / len + 1;
正确示范: for(int i=1;i<=dfn;++i) gp[i] = (i - 1) / len + 1;