if(cnt>(RMAX+1)*2)のブロックで、
cnt-=(RMAX+1)*2するのが抜けてた。すまん。