โข
๋ณดํต ์ฌ๊ท๋ฅผ ์ด์ฉ
โข
์ค๋ฒํค๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค๋ฉด ์คํ, ํ ์ด์ฉ
๋ฐฉ๋ฒ
1.
row, col, size ๋ก ์ฌ๊ท
void partition(int row, int col, int size) {
if (check()) {
return; // ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด ์ฌ๊ท ์ข
๋ฃ
}
size = size / 2;
partition(row, col, size);
partition(row, col + size, size);
partition(row + size, col, size);
partition(row + size, col + size, size);
}
Java
๋ณต์ฌ
2.
์๋ก ๋ง๋ array, size ๋ก ์ฌ๊ท
void partition(int[][] array, int size) {
if (check()) {
return; // ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด ์ฌ๊ท ์ข
๋ฃ
}
size = size / 2;
for (int rowCnt = 0; rowCnt < 2; rowCnt++) {
for (int colCnt = 0; colCnt < 2; colCnt++) {
int newRow = 0;
int[][] newArray = new int[newNum][newNum];
for (int row = (cnt * newNum); row < ((cnt + 1) * newNum); row++) {
int newCol = 0;
for (int col = (colCnt * newNum); col < ((colCnt + 1) * newNum); col++) {
newArray[newRow][newCol] = array[row][col];
newCol += 1;
}
newRow += 1;
}
separation(newArray, newNum);
}
}
}
Java
๋ณต์ฌ
์ ์ฒด์ ์ผ๋ก ๋ก์ง์ ๊ฐ์๋ฐ, ๋ฐฉ๋ฒ 1์ด ํจ์ฌ ๊ตฌ์ํ๊ธฐ ํธํจ!