private static void findIntersectingVacantCells( CellInfo cellInfo, int x, int y, int xCount, int yCount, boolean[][] occupied) { cellInfo.maxVacantSpanX = Integer.MIN_VALUE; cellInfo.maxVacantSpanXSpanY = Integer.MIN_VALUE; cellInfo.maxVacantSpanY = Integer.MIN_VALUE; cellInfo.maxVacantSpanYSpanX = Integer.MIN_VALUE; cellInfo.clearVacantCells(); if (occupied[x][y]) { return; } cellInfo.current.set(x, y, x, y); findVacantCell(cellInfo.current, xCount, yCount, occupied, cellInfo); }