|
|
|
|
/*<2A><>ɫ<EFBFBD><C9AB>:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>color<6F>IJ<EFBFBD><C4B2><EFBFBD>*/
|
|
|
|
|
#include<stdio.h>
|
|
|
|
|
|
|
|
|
|
int a[51][51];
|
|
|
|
|
int book[51][51];
|
|
|
|
|
int n, m, sum;
|
|
|
|
|
void dfs(int x, int y, int color) {
|
|
|
|
|
int k, tx, ty;
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
int next[4][2] = { { 0, 1 },//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{ 1, 0 },//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{ 0, -1 },//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{ -1, 0 }
|
|
|
|
|
};//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
a[x][y] = color;//<2F><>a[x][y]<5D><><EFBFBD><EFBFBD>Ⱦɫ
|
|
|
|
|
|
|
|
|
|
//ö<><C3B6><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
for (k = 0; k<4; k++) {
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
tx = x + next[k][0];
|
|
|
|
|
ty = y + next[k][1];
|
|
|
|
|
|
|
|
|
|
//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD>Խ<EFBFBD><D4BD>
|
|
|
|
|
if (tx<1 || tx>n || ty<1 || ty>m)
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
|
|
//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD>½<EFBFBD><C2BD>
|
|
|
|
|
if (a[tx][ty]>0 && book[tx][ty] == 0) {
|
|
|
|
|
sum++;
|
|
|
|
|
book[tx][ty] = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE>߹<EFBFBD>
|
|
|
|
|
dfs(tx, ty, color);//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int main() {
|
|
|
|
|
int i, j, startx, starty;
|
|
|
|
|
scanf("%d %d %d %d", &n, &m, &startx, &starty);
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
|
|
|
|
|
for (i = 1; i <= n; i++)
|
|
|
|
|
for (j = 1; j <= m; j++)
|
|
|
|
|
scanf("%d", &a[i][j]); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
|
|
|
|
|
|
|
|
|
|
book[startx][starty] = 1;
|
|
|
|
|
sum = 1;
|
|
|
|
|
dfs(startx, starty, -1);//<2F><>-1<><31>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱦɫ
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD>Ⱦɫ<C8BE><C9AB><EFBFBD>ĵ<EFBFBD>ͼ
|
|
|
|
|
for (i = 1; i <= n; i++) {
|
|
|
|
|
for (j = 1; j <= m; j++) {
|
|
|
|
|
printf("%3d", a[i][j]);//%3d<33>е<EFBFBD>3<EFBFBD><33>c<EFBFBD><63><EFBFBD><EFBFBD><EFBFBD>еij<D0B5><C4B3><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
printf("\n");
|
|
|
|
|
}
|
|
|
|
|
getchar();
|
|
|
|
|
getchar();
|
|
|
|
|
return 0;
|
|
|
|
|
}
|