Примерный алгоритм
добавить в очередь точку (x0,y0)
запомнить цвет начальной точки
пока очередь не пуста
{
  взять из очереди точку (x,y)
  если A[y][x] = цвету начальной точки то
  {
    A[y][x] = 2;
    добавить в очередь точку (x-1,y)
    добавить в очередь точку (x+1,y)
    добавить в очередь точку (x,y-1)
    добавить в очередь точку (x,y+1)
  }
}